11-mavzu. ALG ORITM LARNI GRAFIK IFODALASH
V OSITALARI
11.1. Dastuming dizayn vositalari.
11.2. Sodda dasturlarni algoritmlarini ishlab chiqish.
11.3. Algoritm: massiv elementlarini yig‘ndisini aniqlash.
11.4. Algoritm: massiv elementlar ichidan eng kattasini
topish algoritmi.
11.5. Algoritm: chiziqli yoki ketma-ket tashkil etilgan
qidiruv.
Tayanch iboralari: Algoritm. chiziqli, tarmoqlanuvchi,
takrorlanuvchi, blok-chizma.
ll.l.D a stu r n in g dizayn vositalari.
Hozirgi kunda ju d a turli xilma-xil dizayn dasturlash vositalari
mavjud, bularga algoritmlar, sxem alar va psedokodlar kiradi. Bu
b o‘limda, biz dizayn vositalarining tasviriy misollari bilan tanishib
chiqam iz39.
Algoritmlar.
Kom pyuterlar asosan muntazam va oson tarzda, murakkab
m uam m olam i hal etishda ishlatiladi. Murakkab m uam molami
muntazam ravishda yechishda, uning yechimi odatda keying o ‘rinda
o ‘m atilishi kerak. Bu boshqichlam ig har biri oddiy harakat sifatida
belgilanib amalga oshiriladi. Shunday qilib, algoritmlami cheklan-
gan va tartiblangan holda aniqlanib, qachon va qanday vaqtda
amalga oshirishni aniq vaqtini aytadi. Tartiblangan ketma-ketlik
tom onidan taqdim etilgan va tayinlangan so‘zlar, BEGIN va END
lar odatda algoritmning boshlanishi va tugallanishini k o ‘rsatib
turadi. A lgoritm lar quyidagi xususiyatlarga ega bo‘lishi kerak:
1. Cheklovlik.
Cheklovlik algoritmni butun sonlar ketma-ketligi
b o ‘lishini nazarda tutadi. Hamda algoritmni barcha am alga oshirgan
bosqichlar vaqti cheklangan va oqilona chegarasiz b o iis h i lozim.
2.
Aniqlilik.
Nazarga olingan algoritmlaming barcha bosqich-
lari aniq harakatda b o ‘lishi kerak, amalga oshirilayotgan bosqichlari
tushunarsiz b o ‘lishi kerak emas. Bundan tashqari, amalga oshirila-
39 J.B .D ix sit. “Fun d am en tals o f c o m p u te r pro g ra m m in g an d IT” 20 1 1 . 146 p.
271
yotgan qadamlar muntazam ravishda vaqt cheklash holatida ega
boMishi kerak.
3. Kirish. Kirish atamasi boshlang‘ich ma’lumotlar bilan
ta’minlash degan m a’noni anglatadi. Bu ma’lumotlar uning ustidan
har qanday amal bajarilishidan oldin taqdim etilishi lozim. Ba’zan,
algoritm m a’lumotsiz bo‘lishi kerak, sababi dastlabki ma’lumotlar
uni amalga oshirish uchun yetarli m a’lumot ishlab chiqqan bo‘ladi.
Shunday qilib, algoritm boshlang‘ich va umuman ma’lumotsiz
bo'lishi mumkin. Umuman olganda, boshlang'ich ma’lumot READ
va SET ko‘rsatmalariga muvofiq amalga oshiriladi.
4. Chiqish. Chiqish atamasi barcha qadamlaming tugallanish
natijasida olingan algoritmning tayyor holatiga aytiladi. Algoritmda
eng kami bitta chiqish amali bo‘lishi shart.
5. Sam aradorligi. Samaradorlig tushunchasi o‘zi bilan birga
algoritmni real hayotga taqdim etish va aniq vaqtda barcha cheksiz
amallar o'tkazilishini ko‘zda tutadi.
Algoritm lar ifodasi.
Bajariladigan ifoda uchun algoritm tili juda oddiy. Algoritmni
yozish uchun ishlatiladigan til, kunlik jadvalimizda ishlatiladigan
gaplar bilan o‘xshash. Bunga qo‘shimcha qilib, ba’zi maxsus
belgilar ham ishlatiladi:
(i)Tayinlash belgisi (•*—). Tayinlash belgisi (< — ) qiymatlami
turli o‘zgaruvchilarga tayinlash uchun ishlatiladi. Misol uchun, A bir
o‘zgaruvchi va В boshqa bir o'zgaruvchi yoki o‘zgarmas miqdor,
ifoda. Keyingi bayonot
А В ч—
Belgilash bayonoti deb ataladi. Bu bayonot A ni В ga
tayinlangan qiymat zaxirasi bo‘la oladigan ma’noni ko‘zda tutadi.
Agar A o‘z ichida bundan oldingi qiymatni olgan bo'lsa, qiymat
buziladi va yangi qiymat yoziladi.
(iii)Q avslar ( {} ). Qavslar juftligi izoh yozish maqsadida
ishlatiladi.
Misol uchun,
(i)BEGIN {Start o f the algorithm}
(ii) Set N <— N + 1 {Increase the value of N by 1}
(iii)END {End of the algorithm}
272
|