I NAZARIY QISM  1.1Chiziqli jarayonlarni tashkil etish (Algoritm va dastur)

|
I NAZARIY QISM 1.1Chiziqli jarayonlarni tashkil etish (Algoritm va dastur)
|
bet | 2/5 | Sana | 06.06.2024 | Hajmi | 27,86 Kb. | | #260861 |
Bog'liq asrorbek loyiha ishi (2) 1.1Chiziqli jarayonlarni tashkil etish (Algoritm va dastur).
Har qanday murakkab algoritmni ham uch asosiy struktura yordamida tasvirlash mumkin. Bular ketma-ketlik, ayri va takrorlash strukturalaridir. Ushbu strukturalar asosida chiziqli, tarmoqlanuvchi va takrorlanuvchi hisoblash jarayonlarining algoritmlarini tuzish mumkin. Umuman olganda, algoritmlarni shartli ravishda quyidagi turlarga ajratish mumkin:
chiziqli algoritmlar;
tarmoqlanuvchi algoritmlar;
takrorlanuvchi algoritmlar;
ichma-ich joylashgan takrorlanuvchi algoritmlar;
rekurrent algoritmlar;
takrorlanishlar soni oldindan no’malum algoritmlar; - ketma-ket yaqinlashuvchi algoritmlar.
13
Faqat ketma-ket bajariladigan amallardan tashkil topgan algoritmlarga - chiziqli algoritmlar deyiladi. Bunday algoritmni ifodalash uchun ketma-ketlik strukturasi ishlatiladi. Strukturada bajariladigan amal mos keluvchi shakl bilan ko‘rsatiladi. Chiziqli algoritmlar blok-sxemasining umumiy tuzilishi 1.4-rasmda keltirilgan.
1-misol. Uchburchak tomonlarining uzunligi bilan berilgan. Uchburchakka ichki r va tashqi R chizilgan aylanalar radiuslarini hisoblang. Ichki chizilgan aylana radiusi r = (a+b+c)/2S, tashqi chizilgan aylana radiusi R= 4S abc
formulalar orqali hisoblanadi. Bu yerda S - uchburchakning yuzi, a,
b, c – uchburchak tomonlarining uzunliklari. Masala echimining blok-sxemasi
Chiziqli algoritmlar. Bu turdagi algoritmlarda hech qanday shart tekshirilmaydi. Shu sababli barcha ko‘rsatmalar ketmaket bajarib boriladi. «G‘ishtlar sonini hisob!ash», «Doira yuzini
hisoblash» algoritmlari chiziqli algoritmlarga misol bo'ladi. Le- kin hayotimizdagi juda ko‘p jarayonlar shartlar asosida bosh- qariladi.
Tarmoqlanuvchi jarayonlarni tashkil etish ( Algoritm va dastur).
Tarmoqlanuvchi algoritm - deb ma’lum shartlarga muvofiq bajariladigan ko‘rsatmalardan tuzilgan algoritmga aytiladi.
Takrorlanuvchi algoritm biron bir shart tekshirilishi yoki biron parametrning har xil qiymatlari asosida algoritmda takrorlanish yuz beradigan jarayonlarga aytiladi.
Algoritmlarni turli usullarda tasvirlash mumkin. Masalan: so‘z bilan ifodalash; formulalarda berish; blok-sxemalarda tasvirlash; dastur shaklida ifodalash va boshqalar.
Algoritmlarni blok-sxema ko‘rinishda tasvirlash qulay va tushunarli bo‘lgani uchun ko‘p ishlatiladi. Bunda algoritmdagi har bir ko‘rsatma o‘z shakliga ega. Masalan: parallelogramm ko‘rinishdagi belgi ma’lumotlarni kiritish va chiqarish; to‘g‘ri to‘rtburchak belgisi hisoblash jarayonini; romb belgisi shartlarning tekshirilishini bildiradi.
Hayotimizda algoritmlarni turli sohalarda ba’zan bilgan holda ba’zan esa bilmagan holda ishlatamiz. Algoritmlar faqat matematik xarakterga ega bo‘lmasdan ularni oddiy hayotiy turmushimizda ham ko‘p qo‘llaymiz. Masalan, ovqat tayyorlash, choy damlash, biror berilgan ishni bajarish va boshqa. Bu ishlarni bajarishda ma’lum bo‘lgan aniq ko‘rsatmalarni ketma ket bajaramiz. Agar bu ko‘rsatmalar aniq bir ketma ketlik tartibida bajarilmasa kerakli natijani olaolmaymiz. Misol tariqasida matematik xarakterga ega bo‘lmagan butelbrod tayyorlash algoritmini ko‘rib chiqaylik. Bunda boshlang‘ich berilganlar: non, kolbasa va pishloq. Natija: butelbrod.
Butelbrod tayyorlash algoritmi:
non bo‘lagini kesib olish;
kolbasa va pishloq bo‘lagini kesib olish;
kolbasa va pishloq bo‘lagini non bo‘lagi orasiga qo‘yish.
Agar bu jarayonning ketma ketlik o‘rinlari almashsa yoki biror bir bosqich amalga oshirilmasa natija bo‘lmaydi.
Algoritmik tillar Masalani echish algoritmi ishlab chiqilgandan so‘ng dastur tuziladi.
Dastur - bu berilgan algoritmga asoslangan biror bir algoritmik tilda yozilgan ko‘rsatmalar, ya’ni buyruqlar yoki operatorlar to‘plamidir.
Dasturlash - esa bu dastur tuzish jarayoni bo‘lib, u quyidagi bosqichlardan iboratdir:
dasturga bo‘lgan talablar;
qo‘yilgan masala algoritmini tanlash yoki ishlab chiqish; • dastur kodlarini (matnlari, buyruqlarni) yozish;
dasturni to‘g‘rilash va test o‘tkazish.
Hozirgi kunda juda ko‘plab algoritmik tillar mavjud. Ularga dasturlash tillari deb ataymiz. Algoritmik til - algoritmlarni bir xil va aniq yozish uchun ishlatiladigan belgilashlar va qoidalar tizimidir. Algoritmik til oddiy tilga yaqin bo‘lib u matematik belgilarni o‘z ichiga oladi. Tuzilgan algoritmlarni to‘g‘ridan-to‘g‘ri mashinaga berib bo‘lmaydi, shu sababli yozilgan algoritmni biror bir algoritmik tilga o‘tkazish zarur. Har qanday algoritmik til o‘z qo‘llanilish sohasiga ega. Masalan, muxandislik hisob ishlarini bajarishda Paskal, Beysik va Fortran. Iqtisod masalalarini echishda Paskal va Kobol. Mantiqiy dasturlash uchun Prolog va boshqalar. O‘quv jarayonlari uchun Beysik, Paskal va boshqalar.
Paskal, Fortran va Kobol tillari universal tillardan hisoblanadi. Assembler tili mashina tiliga ancha yaqin til bo‘lib o‘rta darajadagi tildir. Algoritmik til inson tillariga qancha yaqin bo‘lsa, u tilga yuqori darajali til deyiladi. Mashina tili esa eng pastki darajali tildir.
Tarmoqlanuvchi jarayonlarni dasturlash - Tarmoqlanuvchi hisoblash jarayonlarini algoritmlash va dasturlash. Ko‘pgina masalalami yechishda ba’zi bir jarayonlar ma’him shart yoki shartlaming qo‘yilishiga nisbatan bajariladi. Bunday jarayonlar tarmoqlanuvchi jarayonlar deb yuritiladi va bu jarayonlaming algoritmik tavsiflari bilan awalgi boblarda tanishgan edik. Tarmoqlanuvchi hisoblash jarayonlari oddiy va murakkab boTishi mumkin. Bu esa jarayondagi tarmoqlar soniga bogTiq. MaTum bir tarmoqlanuvchi jarayon tarkibida yana tarmoqlanishlar boTishi mumkin. Bunday tarmoqlanishlari bor boTgan hisoblash jarayonlari murakkab tarmoqlanuvchi hisoblash jarayonlari deb ataladi.
C++ tilida tarmoqlanuvchi jarayonlarni dasturlash uchun shartsiz, shartli oTish va tanlash operatorlaridan foydalaniladi: IF, CASE.
|
| |