- Savatga boshqa "FONETIKA" qo'sha olmaysiz. Ko'rish
Algoritm. Algoritmning berilish usullari. Xossalari va turlari
4000 so'm

Slayd 1
Algoritm. Algoritmning berilish usullari. Xossalari va turlari
Slayd 2
Reja:
01
04
02
05
03
06
Algoritm
Algoritmning tasvirlash usullari
Algoritmning xossalari
Chiziqli algoritmlar
Tarmoqlanuvchi algoritmlar
Takrorlanuvchi algoritmlar
Slayd 3
Algoritm
01
Slayd 4
Algorithm nima?
Ta’rif: Algoritm –bu biror bir masala yoki muammoni hal etish uchun kerak bo‘lgan chekli sondagi buyruqlar ketma-ketligi.
Algoritm so‘zi va tushunchasi IX asrda yashab ijod etgan buyuk vatandoshimiz alloma Muhammad al-Xorazmiy nomi bilan uzviy bog‘liq. Algoritm so‘zi Al-Xorazmiy nomini Yevropa olimlari tomonidan o‘zgacha talaffuz qilinishidan yuzaga kelgan. Al-Xorazmiy birinchi bo‘lib o‘nlik sanoq sistemasining tamoyillarini va undagi to‘rtta amallarni bajarish qoidalarini asoslab bergan. Masala yoki muammoni hal etish uchun yuqorida keltirilib o‘tilganidek, uni algoritmini tuzish kerak bo‘ladi.
Slayd 5
Masala algoritmini tuzish tartibini quyidagi masala orqali ko‘rib chiqamiz:
1. a, b, c, larning son qiymatlari kiritilsin.
2. Berilgan qiymatlar yordamida p=(a+b+c)/2 qiymat hisoblansin
Misol. a, b va c sonlari berilgan. Bu sonlar uchburchakning tomonlari bo‘lsin. Hosil bo‘lgan uchburchakning yuzini hisoblash algoritmini tuzish talab qilinsin.
Buning uchun quyidagi buyruqlarni (amallarni) bajarish kerak bo‘ladi.
Demak, masalani yechish ketma-ketligini algoritm sifatida qarash mumkin.
Slayd 6
Algoritmning tasvirlash usullari
Masala algoritmini tuzish vaqtida, bu masala qanday sohaga tegishligiga qarab algoritm bir necha xil ko‘rinishda tasvirlanishi mumkin. Algoritmlarni bir nechta tasvirlash usullari mavjud. Iqtisodiy masalalar algoritmi jadvallar ko‘rinishida, matematik masalalar formula yoki grafik usullarda va sanoatda esa so‘zlar yordamida tasvirlanishi mumkin.
Slayd 7
1. Algoritmni so‘zlar vositasi bilan ifodalanishi
Bu usulda ijrochi uchun beriladigan har bir buyruq (ko‘rsatma), jumlalar, so‘zlar orqali buyruq shaklida beriladi.
Misol. To‘g‘ri to‘rtburchakning a va b tomonlarning uzunliklari berilgan. Shu to‘g‘ri to‘rtburchakning yuzasi va perimetrini hisoblash algoritmi tuzilsin.
Boshlanishi
a va b larning son qiymati kiritilsin.
a ni b ga ko‘paytirib S bilan belgilansin. (S=ab hosil bo‘ladi)
a ni b qo‘shib 2 ga ko‘paytirilib P bilan belgilansin. (P=2(a+b) hosil bo‘ladi)
S va P larning qiymatlarini chop etilsin.
Tamom
Slayd 8
2. Algoritmlarning grafik shaklida tasvirlanishi
Bu usulda algoritmlar maxsus geometrik figuralar yordamida tasvirlanadi va bu grafik ko‘rinishi blok-sxema deb ataladi. Algoritmning blok-sxema ko‘rinishida tasvirlanishi beriladigan buyruqlar qandaydir shakllar orqali ifodalanadi.
Algoritmning blok-sxemalar yordamida tasvirlashda foydalaniladigan asosiy sodda geometrik figuralar quyidagilardan iborat.
Slayd 9
2. Algoritmlarning grafik shaklida tasvirlanishi
Parallelogramm, bu figura qiymat kiritish bloki deb ataladi.
Avval, bu figura algoritmning boshlanishi va tamom bo‘lganligini bildiradi.
To‘g‘ri to‘rtburchak, bu figura o‘zgaruvchiga qiymat berish yoki tegishli ko‘rsatmalarni bajarish jarayonini belgilaydi.
Romb, masaladagi shartni tekshirishni belgilaydi va shart bajarilsa “ha” javob aks holda “yo‘q” javob bo‘lib, navbatdagi amal bajariladi.
Slayd 10
2. Algoritmlarning grafik shaklida tasvirlanishi
Yordamchi algoritmga murojatni belgilaydi.
Olti burchak, parametrli takrorlanuvchi algoritmlarni ifodalash uchun ishlatiladi.
Natijalarni chop qilishni belgilaydi.
Yo‘naltirilga kesma, amallar bajarilish yo‘nalishini ko‘rsatadi.
Slayd 11
2. Algoritmlarning grafik shaklida tasvirlanishi
Yuqorida ko‘rsatilgan algoritmlarning tasvirlash usullarining asosiy maqsadi – qo‘yilgan masalani yechish uchun zarur bo‘lgan amallar ketma-ketligining eng qulay holatini aniqlash va shu bilan foydalanuvchi tomonidan dastur tuzishni yanada osonlashtirishdan iborat. Aslida dastur ham algoritmning boshqa bir ko‘rinishi bo‘lib, u insonning kompyuter bilan muloqotini qulayroq amalga oshirish uchun mo‘ljallangan.
Slayd 12
Misol. To‘g‘ri burchakli uchburchakning a va b tomonlari berilgan. Shu uchburchakning gipotenuzasini, yuzini va perimetrini hisoblash algoritmini blok-sxemasini tuzing!
Slayd 13
Boshlanishi
a,b
p = a+b+c, d = p/2
x =d – a, y=d – b z=d – c p/2
c, p, S
Tamom
– gipotenuzasi
– perimetri
– yarim perimetri
p = a+b+c
d= p/2
– yuzi
x = (d – a)
y = (d – b)
z = (d – c)
Slayd 14
Algoritm xossalari
Masala yoki muammoni hal etish jarayoni uchun keltirilgan algoritmlar ma’lum bir xususiyatlarga bo‘ysunish kerak. Bu xususiyatlarni e’tiborga olib algoritmlar quyidagi xossalarga ega.
Slayd 15
Algoritm xossalari
Diskretlilik (Cheklilik)
Bu xossaning mazmuni algoritmlarni doimo chekli sondagi oddiy ko‘rsatmalar ketma-ketligi shaklida ifodalash mumkin. Agar kuzatilayotgan jarayonni chekli qadamlardan iborat qilib qo‘llay olmasak, uni algoritm deb bo‘lmaydi.
Slayd 16
Algoritm xossalari
Aniqlilik.
Ijrochiga berilayotgan ko‘rsatmalar aniq mazmunda bo‘lishi zarur. Chunki ko‘rsatmadagi noaniqliklar mo‘ljaldagi maqsadga erishishga olib kelmaydi. Odam uchun tushunarli bo‘lgan “3–4 marta silkitilsin”, “5–10 daqiqa qizdirilsin”, “1-2 qoshiq solinsin”, “tenglamalardan biri yechilsin” kabi noaniq ko‘rsatmalar robot yoki kompyuterni qiyin ahvolga solib qo‘yadi.
Bundan tashqari, ko‘rsatmalarning qaysi ketma-ketlikda bajarilishi ham muhim ahamiyatga ega. Demak, ko‘rsatmalar aniq berilishi va faqat algoritmda ko‘rsatilgan tartibda bajarilishi shart ekan.
Slayd 17
Algoritm xossalari
Ommaviylik.
Har bir algoritm mazmuniga ko‘ra bir turdagi masalalarning barchasi uchun ham o‘rinli bo‘lishi kerak. Ya‘ni masaladagi boshlang‘ich ma’lumotlar qanday bo‘lishidan qat’iy nazar algoritm shu xildagi har qanday masalani yechishga yaroqli bo‘lishi kerak. Masalan ikki oddiy kasrning umumiy maxrajini topish algoritmi, kasrlarni turlicha o‘zgartirib bersangiz ham ularning umumiy maxrajlarini aniqlab beraveradi. Yoki uchburchakning yuzini hisoblash algoritmi, uchburchakning qanday bo‘lishidan qat’iy nazar, uning yuzini hisoblab beraveradi.
Slayd 18
Algoritm xossalari
Natijaviylik
Har bir algoritm chekli sondagi qadamlardan so‘ng albatta, natija berishi shart. Bajariladigan amallar ko‘p bo‘lsa ham baribir natijaga olib kelishi kerak. Chekli qadamdan so‘ng qo‘yilgan masala yechimga ega emasligini aniqlash ham natija hisoblanadi. Agar ko‘rilayotgan jarayon cheksiz davom etib natija bermasa, uni algoritm deb atay olmaymiz.
Slayd 19
— Chiziqli algoritmlar
— Tarmoqlanuvchi algoritmlar
— Takrorlanuvchi algoritmlar
Masalani hal etish uchun tuzilgan algoritm tarkibidagi buyruqlar ketma-ketligi uzluksiz bo‘lishi mumkin yoki qandaydir hollarda shartlar asosida uzluksizlik tarqatilishi mumkin. Chiziqli algoritmlarda esa buyruqlar ketma-ketligi doim uzluksiz bo‘ladi.
Tuzilayotgan algoritmlar doimo bir xil yo‘nalishlarda bo‘lmaydi. Masala yoki muammoni hal etish ma’lum bir algoritm bo‘yicha amalga oshiriladi. Masalaning va ularning algoritmlari ham ma’lum bir turlarga bo‘linadi. Har qanday murakkab masalani ham uchta asosiy strukturaga keltirish mumkin. Algoritmlarni umumlashtirgan holda quyidagi turlarga ajratamiz:
Slayd 20
Demak, algoritm bajarilishida hech qanday shart bo‘lmaslik va uzluksizlik yo‘qolmaslik kerak. Algoritm tuzish vaqtida uning turini aniqlash uchun masala tarkibida hech qanday shart yoki takrorlanish bo‘lmaslik kerak. Har qanday masala algoritmini ham uchta chiziqli, shartli va takrorlanuvchi algoritmlar yordamida tasvirlash mumkin. Chiziqli algoritmlar bajarilish vaqtida buyruqlar ketma-ketligi buzilmasdan davom etadi.
Chiziqli algoritmlar
Ta’rif: Algoritm bajarilish vaqtida hech qanday to‘siqqa uchramasdan buyruqlar ketma-ketligi uzluksiz bajarilsa bunday algoritmlar chiziqli algoritm deb ataladi.
Slayd 21
Misol: Aylana uzunligi l berilgan. Shu aylananing radiusini, shu aylana bilan chegaralangan doirani yuzini hisoblash algoritmini blok-sxemasini tuzing!
Bu masala algoritmini tuzish jarayoni aylana uzunligi l ni qiymati berilganda aylana radiusi r ni va doiraning yuzi S ni hisoblanib natija deb e’lon qilinishi kerak bo‘ladi. Berilgan masalani hal qilish uchun algoritmning so‘zlar vositasi va blok-sxema ko‘rinishini quyidagi jadval orqali keltiramiz.
Slayd 22
Algoritmni so‘zlar vositasida ifodalanishi
Algoritmni blok-sxema yordamida ifodalanishi
Boshlanishi l ni qiymati kiritilsin r=l/2 hisoblansin S=π∙r∙r hisoblansin r va S natijani chop etilsin Tamom
Boshlanishi
l
r = l/2, S=π∙r∙r
r,S
Tamom
Slayd 23
Blok-sxemalar bilan ishlashni yaxshilab o‘zlashtirib olish zarur, chunki bu usul algoritmlarni ifodalashning qulay vositalaridan biri bo‘lib, programma tuzishni osonlashtiradi, programmalash qobiliyatini mustahkamlaydi. Algoritmik tillarda blok-sxemaning asosiy strukturalariga maxsus operatorlar mos keladi. Shuni aytish kerakki, blok-sxemalardagi yozuvlar odatdagi yozuvlardan katta farq qilmaydi. 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. Aslida programma ham algoritmning boshqa bir ko‘rinishi bo‘lib, u insonning kompyuter bilan muloqotini qulayroq amalga oshirish uchun mo‘ljallangan.
Slayd 24
Masala yoki muammoni hal etish jarayonida qandaydir shartlarga duch kelinsa, bu masala shartlarning bajarilishi asosida amalga oshiriladi. Masala yechimi aniqlanish jarayonida tuzilayotgan algoritmlar shartlar asosida tarmoqlanishi mumkin, ya’ni shart bajarilish asosida chin qiymat qabul qilganda algoritmning bir qismi yolg‘on qiymat qabul qilganda esa algoritmning boshqa qismi bajariladi. Algoritm bajarilish davomida har doim ham buyruqlar ketma-ketligi bajarilavermaydi, shunday holatlar ham mavjudki, algoritm tarkibida shartlar asosida buyruqlar ketma-ketligi tarmoqlanib ketadi.
Slayd 25
Tarmoqlanuvchi algoritmlar
Ta’rif: Algoritm bajarilish vaqtida buyruqlar ketma-ketligi shartlar asosida u yoki bu qismga tarmoqlanishiga tarmoqlanuvchi algoritmlar deyiladi.
Tarmoqlanuvchi algoritmlar quyidagicha so‘zlar yordamida tasvirlanadi. Agar qo‘yilgan shart bajarildimi? –degan savol qo’yiladi unga javoban “ha” yoki “yo‘q” degan javob aytiladi. Yani “ha” javobni olsa unga mos hisoblash bajariladi, “yo‘q” javob olsa unga mos hisoblash bajariladi.
Tarmoqlanuvchi algoritmlar quyidagicha blok-sxema yordamida tasvirlanadi:
shart
ha
Yo‘q
Shart “post” bo‘lganda algoritm “ha” tomondagi amallar bajariladi “yolg‘on” bo‘lganda esa “yo‘q” tomondagi amallar bajariladi.
Slayd 26
Misol. a,b,c haqiqiy sonlari berilgan, bu sonlar uchburchalning tomonlari bo‘sa shu uchburchakning yusini hisoblash algoritmini tuzing!
Yechish: Dastlab berilgan haqiqiy sonlar uchburchalning tomonining uzunliklari bo‘lish yoki bo‘lmasligini tekshirishimiz kerak bo‘ladi, yani uchburchakning mavjudligi shartlarini tekshirish kerak, ya’ni a+b>c, a+c>b va b+c>a shartlar bajarilsa bu sonlar tomonlarining uzunligi bo‘lgan uchburchak mavjud bo‘ladi. Berilgan masalani hal qilish uchun algoritmning so‘zlar vositasi va blok-sxema ko‘rinishini quyidagi jadval orqali keltiramiz.
Slayd 27
Boshlanishi
a,b,c
a+b>c va a+c>b va b+c>a
Uchburchak mavjud emas
p, S
Tamom
Slayd 28
Masala yoki muommoni hal etishda ba’zi jarayonlar bir necha marta takrorlanish mumkin. Algoritm tarkibida biror parametr qandaydir shartga bog‘liq ravishda oshishi yoki kamiyish hisobiga takrorlanish jarayonlari vujudga kelishi mumkin. Bunda bu jarayonlar takrorlanishlar orqali amalga oshiriladi.
Slayd 29
Takrorlanuvchi algoritmlar
Ta’rif: Algoritmning ma’lum bir qismi qandaydir shartlar asosida ikki va undan ortiq bajarilishiga takrorlanuvchi algoritmlar deb ataladi.
Slayd 30
Takrorlanuvchi algoritmlar
Takrorlanuvchi algoritmlar bajarilish vaqtida uning qandaydir qismi bir necha marta takrorlanadi. Algoritm bajarilish davomida har doim ham buyruqlar ketma – ketligi bajarilavermaydi, shunday holatlar ham mavjudki, algoritm tarkibida shartlar asosida buyruqlar ketma-ketligi bir necha marta takrorlanish ham mumkin. Masalan 1 dan n gacha sonlarning kvadratlar yig‘indisi yoki yig‘indisi x ga teng sinuslarning kvadratlar yig‘indisi kabi masalalar algoritmi shartlar asosida takrorlanishlar yordamida tuziladi.
Ta’rif: Algoritmning ma’lum bir qismi qandaydir shartlar asosida ikki va undan ortiq bajarilishiga takrorlanuvchi algoritmlar deb ataladi.
Slayd 31
Takrorlanuvchi algoritmlar asosan ikki xil ko‘rinishda bo‘ladi:
— Takrorlanishlar soni oldindan aniq.
— Takrorlanishlar soni qandaydir shartlarga bog‘liq.
Slayd 32
Takrorlanuvchi algoritmlar
Takrorlanishlar soni oldindan aniq bo‘lgan masalalarda algoritm bajarilishini bitta parametr soni bilan bog‘lanadi. Takrorlanishlar soni qandaydir shartlarga bog‘liq bo‘lgan holatlarda takrorlanishni shartli jarayon bilan ifodalanadi.
Slayd 33
Misol. 1 dan 100 gacha bo‘lgan butun sonlar yig‘indisini hisoblang algoritmini tuzing!
Yechish: 1-Usul: Takrorlanishlar soni oldindan aniq bo‘lgan hol uchun.
Slayd 34
Algoritmni so‘zlar vositasida ifodalanishi
Algoritmni blok-sxema yordamida ifodalanishi
1. Boshlanishi 2. Yig‘indi yig‘iladigan joyni tozalang. S=0 4. i uchun 1 dan 100 gacha 1 qadam bilan sikl oching. 5. Rekurrent formulani yozing, S=S+i. hisoblash 4 bandiga qaytarilsin. 6. S ni pechatga chiqaring. 7. Tamom.
Boshlanishi
S = 0
i = 1,100,1
S =S+i
S
Tamom
Slayd 35
Misol. 1 dan 100 gacha bo‘lgan burun sonlar yig‘indisini hisoblash algoritmini tuzing!
Yechish: 2 –Usul: Takrorlanishlar soni qandaydir shartlarga bog‘liq bo‘lgan hol uchun. Bu yerda parametrning qiymati 100 dan oshib ketmasligi hisobga olinadi va i <= 100 shart qo‘yiladi.
Slayd 36
Algoritmni so‘zlar vositasida ifodalanishi
Algoritmni blok-sxema yordamida ifodalanishi
1. Boshlanishi 2. Yig‘indi yig‘iladigan joyni tozalang. S= 0 3. Takrorlash parametrining dastlabki qiymati kiritilsin i = 1. 4. i<=100 shart tekshirilsin shart bajarilsa 5 bandga aks holda 7 bandga o‘tilsin. 5. S=S+i recurrent formula hisoblansin. 6. Keyingi qadamga o‘tilsin i=i+1 va 4 bandga o‘tilsin. 7. S ni qiymatini chop etilsin. 8. Tamom.
Yo‘q Ha
Boshlanishi
S = 0
i <= 100
i =i+1
S
Tamom
S =S+i
Slayd 37
Yuqorida keltirilgan algoritmning turlari asosida ixtiyoriy masala yoki muammolarni hal etish imkoniyati yaratiladi.
Slayd 38
E’tiboringiz uchun rahmat!
Bizni ijtimoiy tarmoqlarda kuzatib boring!
Slayd 39
Foydali havolalar
🛒 Barcha taqdimotlar | 📰 Yangiliklar | ℹ️ Biz haqimizda
| 5 |
|
0 |
| 4 |
|
0 |
| 3 |
|
0 |
| 2 |
|
0 |
| 1 |
|
0 |












Sharhlar
Hali sharhlar mavjud emas.