Mavzu: Algoritm haqida umumiy intuitive ta’rif



Download 308,64 Kb.
bet10/20
Sana01.01.2022
Hajmi308,64 Kb.
#296099
1   ...   6   7   8   9   10   11   12   13   ...   20
Bog'liq
32317c2bac0a51699e4ab42dfe0e01b69af0d983

C Boshlanish j

T



dan 1000 gacha bo‘lgan sonlar yig‘indisini, ya’ni S = 1+2+3+...+ 1000 ni hisoblash algoritmini tuzing.

So‘zlar bilan ifodalangan algoritmda blok-sxema bilan mu- tanosiblikni bildirish uchun qavslar ichida izohlar berib bordik. Odatda, takrorlanuvchi algoritmlarda «I:= I+1» ifoda sanagich deb yuritiladi. Bu misol yechimini chiziqli algoritm shaklida tashkil etish ham mumkin. Buning uchun arifmetik progres- siyaning 1000 ta hadi yi‘gindisini hisoblash formulasidan foydalanish kifoya (algoritmni mustaqil tuzing). Lekin keyingi misolda bunday qilish ancha mushkul.

  1. misol

2 xonali sonlar ichidan raqamlari yig‘indisi 7 ga teng sonlar yig‘indisini hisoblash algoritmini tuzing ([a] — a sonining butun qismi, / — bo‘lish amali).







Korib otilgan algoritmlarga nazar tashlasak, algoritmlar chi- ziqli, tarmoqlanuvchi yoki takrorlanuvchi qismlardan tashkil topganligini kuzatish mumkin.

Demak, inson hayotida uchraydigan algoritmlar, asosan, shu uch turdagi algoritmlarning uzviy birligi sifatida namoyon bo‘ladi.

Nazorat savollari va topshiriqlar

  1. Algoritm nima?Misollarkeltiring.

  2. Algoritmning qanday xossalarini bilasiz ?

  3. Boshlang ‘ich qiymatlar deganda nimani tushunasiz ?

  4. Hamma bajara olishi uchun algoritm qanday xossaga ega bo ‘lishi kerak?

  5. Tushunarlilik xossasi bajariladigan va bajarilmaydigan ko*rsatmalar ketma- ketligiga misollar keltiring.

  6. Ko ‘rsatmalar ijrochiga tushunarli bo ‘lishi uchun qanday sistemadan olinishi kerak?

  7. Ijrochi algoritmni so ‘zsiz bajarishi uchun qanday xossa ahamiyatli? Javobingizni izohlang.

  8. Algoritmning diskretlilik xossasini misollar yordamida tushuntiring.

  9. Algoritmning natijaviylik xossasini misollar yordamida tushuntiring.

  10. Natijaviylik xossasi bajarilmaydigan ko Rsatmalar ketma-ketligiga misollar keltiring.Algoritmning ommaviylik xossasini misollar yordamida tushuntiring.

  11. Algoritmning qanday tasvirlash usullari bor?

  12. Algoritmning so ‘zlar orqali ifoda etilishiga hayotiy misollar keltiring.

  13. Qaysi fanlarda algoritmni formulalar yordamida berish qulay?

  14. Algoritmning formulalar orqali ifoda etilishiga fizika fanidan misollar keltiring.

  15. Algoritmning jadval ko‘rinishida berilishiga misollar keltiring.

  16. Algoritmning grafik shaklda berilishiga misollar keltiring.

  17. Blok-sxemaning asosiy elementlariga misollar keltiring.

  18. Algoritmning dastur shaklida berilishiga misollar keltiring.

  19. Qanday algoritmlar chiziqli algoritm deb ataladi? Chiziqli algoritmlarga hayotiy misollar keltiring.

  20. Qanday algoritmlar tarmoqlanuvchi algoritm deb ataladi? Tarmoqlanuvchi algoritmlarga hayotiy misollar keltiring.

  21. Qanday algoritmlar takrorlanuvchi algoritm deb ataladi? Takrorlanuvchi algoritmlarga hayotiy misollar keltiring.

  22. Chiziqli, tarmoqlanuvchi va takrorlanuvchi algoritmlarning bir-biridan farqini tushuntiring.

  23. Uchta sondan kattasini (UKT) aniqlab beruvchi algoritm tuzing.

  24. Berilgan sonning ishorasini aniqlovchi algoritm tuzing.

  25. Quyidagi ko ‘rsatmalar ketma-ketligi qanday algoritm turiga misol bo ‘ladi? Algoritmlar natijasini aniqlang:

  1. a: =3, x: =2 *a +a *a; a = ?, x= ?

  2. x:=1, x: =x+11, x:=x*x- 4; x=?

d) a:=15, b:=a, a:=a-b; a=?, b=?

  1. Quyidagi ko ‘rsatmalar ketma-ketligi qanday algoritm turiga misol bo ‘ladi? Algoritmlar natijasini aniqlang:

  1. 1) a:=3;

  1. agar a > 2 bo ‘lsa, u holda x:=2*a+a *a va 4-bandga o ‘tilsin;

  2. x:= 9-a*x;

  3. javobi x yozilsin;

  4. tugatilsin;

  1. 1) x:=1;

  1. agar x > 2 bo ‘lsa, u holda x:=x+11 va 4-bandga o ‘tilsin;

  2. x:=x*x-4;

  3. javobi x yozilsin;

  4. tugatilsin; d) 1) a:=15;

  1. b:= a;

  2. agar a > b bo ‘lsa, u holda a:=a-b va 5-bandga o ‘tilsin;

  3. a:=a+b;

  4. javobi a, b yozilsin;

  5. tugatilsin.



Qo‘shimcha masalalar

R-1. Robot kengligi 1 katak bo‘lgan gorizontal yo‘lakda turibdi. Undan chapda qayerdadir bo‘yalgan katak bor. Robotni turgan katagidan bo‘yalgan katakka borib, yana joyiga qaytarib keltiradigan algoritm tuzing.

R
Robot bu yerda Robot bu yerga

turibdi o‘tishi kerak



7.3-rasm.

-2.
Robot kengligi 1 katak bo‘lgan yuqoridan va quyidan devor bilan chegaralangan gorizontal yo‘lakda turibdi. Undan o‘ngda qayerdadir bo‘yalgan katak bor. Robot turgan katagiga bo‘yalgan katakka nisbatan simmetrik bo‘lgan chapdagi katakka borishi kerak (7.3-rasm). Mos algoritmni tuzing.

R-3. Robot kengligi 1 katak bo‘lgan gorizontal yo‘lakda turibdi. Undan chapda qayerdadir devor bor. Robotni turgan katagidan devorgacha olib borib, yana joyiga qaytarib olib keladigan algoritm tuzing.

R-4. Robotni o‘zidan yuqorida joylashgan gorizontal devor yoniga olib keladigan rekursiv algoritm tuzing.

R-5. Robot o‘tgan katagini bo‘yab ketishi mumkin bo‘lsa, u holda

  1. R-1

  2. R-3

masalalarni rekursiyasiz yeching.

K-1. Samarador Kamaytiruvchi uchun rekursiv protsedurani chaqiradigan algoritm tuzing.

Mavzu: Rekursiya va rekursiv funksiyalar. Matematik induksiya. Rekursiv va iteratsion algoritmlarni qiyoslash

Programma ta’minotini yaratish amalda murakkab jarayon hisoblanadi. Programma tuzuvchi programma kompleksini bir butunlikdagi va uning har bir bo‘lagining ichki mazmunini va ularning sezilmas farqlarini hisobga olishi kerak bo‘ladi.

Programmalashga tizimli yondoshuv shundan iboratki, programma

tuzuvchi oldiga qo‘yilgan masala oldindan ikkita, uchta va undan ortiq nisbatan kichik masala ostilarga bo‘linadi. O‘z navbatida bu masala ostilari ham yana kichik masala ostilariga bo‘linishi mumkin.

Bu jarayon toki mayda masalalarni oddiy standart amallar yordamida yechish

mumkin bo’lguncha davom etadi. Shu yo‘l bilan masalani dekompozitsiyalash

amalga oshiriladi.

Ikkinchi tomondan, programmalashda shunday holatlar kuzatiladiki, unda programmaning turli joylarida mazmunan bir xil algoritmlarni bajarishga to‘g‘ri keladi. Algoritmning bu bo‘laklari asosiy yechilayotgan masaladan ajratib olingan qandaydir masala ostini yechishga mo‘ljallangan bo‘lib, yetarlicha mustaqil qiymatga (natijaga) egadir. Misol uchun quyidagi masalani ko‘raylik:

Berilgan a ,a ,…,a , b ,b ,…,b c ,c ,…,c va x,y,z haqiqiy sonlar

yechish



ifodaning qiymati hisoblansin.

Bu misolni yechishda kasrning surat va maxrajidagi ifodalar bir xil algoritm bilan hisoblanadi va programmada har bir ifodani (masala osti) hisoblash uchun bu algoritmni 3 marta yozishga to‘g‘ri keladi. Masaladagi 30-darajali ko‘phadni hisoblash algoritmini, masalan, Gorner algoritmini alohida, bitta nusxada yozib, unga turli parametrlar- bir safar a vektor va x qiymatini, ikkinchi safar b vektor va y qiymatini hamda c vektor va (x+z) qiymatlari bilan murojaat qilish asosiy masalani yechish mumkin bo‘ladi. Funksiyalar qo‘llanishining yana bir sababini quyidagi masalada ko‘rishimiz mumkin – berilgan chiziqli tenglamalar sistemasini Gauss, Kramer, Zeydel usullarining birortasi bilan yechish talab qilinsin. U holda asosiy programmani quyidagi bo‘laklarga bo‘lish maqsadga muvofiq bo‘lar edi: tenglama koiffitsentlarini kiritish bo‘lagi, yechish usulini tanlash bo‘lagi, Gauss, Kramer, Zeydel usullarini amalga oshirish uchun alohida bo’laklar, natijani chop qilish bo‘lagi. Har bir bo‘lak uchun o‘z funksiyadir majmuasi yaratib, zarur bo‘lganda ularga bosh funksiya tanasidan murojaatni amalga oshirish orqali bosh masala yechish samarali hisoblanadi.

Bunday hollarda programmani ixcham va samarali qilish uchun C++ tilida programma bo‘lagini alohida ajratib olib, uni funksiya ko‘rinishida aniqlash imkoni mavjud.

Funksiya bu – C++ tilida masala yechishdagi kalit elementlaridan biridir.




Download 308,64 Kb.

Do'stlaringiz bilan baham:
1   ...   6   7   8   9   10   11   12   13   ...   20




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish