Darso’tishjoyi: _____________________________________________________
Darsning borishi:
I. Tashkiliy davr
a) salomlashish;
b) davomatni aniqlash;
d) sinfni darsga tayyorlash.
II. Takrorlash.
Algoritm deganda nimani tushunasiz?
Algoritm so'zining kelib chiqish tarixini gapirib bering.
Algoritm ijrochisi haqida nimalarni bilasiz?
Qanday ko'rsatmalarni ijrochi bajara olmaydi?
III. Yangi mavzuni o`rganish.
Avvalgi darsda algoritm va algoritm ijrochisi haqida so’z borgan edi. Endi algoritmning asosiy xossalari bilan kengroq tanishtiramiz:
1. Tushunarlilik. Algoritm ijrochiga tushunarli bo’lishi uchun ijrochining imkoniyatlarini bilish lozim. Agar ijrochi inson bo’lsa, u holda algoritm insonning imkoniyatlaridan kelib chiqib tuzilishi kerak. Bunda ko’zlangan maqsad va algoritmdan kelib chiqib inson tushunadigan til, insonning bilimi, hayotiy tajribasi, kasbiy malakasi, yoshi, qolaversa, jismoniy imkoniyatlari hisobga olinishi zarur. Agar ijrochi texnik vosita (masalan, kompyuter, elektron soat, dastgohlar) bo’lsa, u holda algoritm shu texnik vositaning imkoniyatlaridan kelib chiqib tuzilishi kerak.
Demak, berilayotgan har qanday ko’rsatma ijrochinining ko’rsatmalar sistemasidan olinishi, ya’ni ijrochi uni qanday bajarishni bilishi kerak ekan.
2. Aniqlik. Algoritmdagi barcha amallar, ko’rsatmalar yoki buyruqlar bir ma’noli va aniq bo’lishi kerak. Masalan, ‘ozgina tuz solinsin ( bir osh qoshiqmi yoki bir choy qoshiqmi yoki bir piyolami?), keragicha suv quyilsin (kerak deganda qancha suv nazarda tutildi: 1 litrmi, 100 litrmi, 1 tonnami?), insho yozib kelinsin (qaysi mavzuga oid?) kabi ko’rsatmalar har xil (ko’pincha keraksiz) natijalarga olib keladi.
Bundan shunday xulosaga kelamiz, aniqlik xossasiga asosan algoritm ijrochisi ko’rsatmalar ketma-ketligini mexanik ravishda xatosiz bajaradi va qo’shimcha izohlar talab qilmaydi.
3. Diskretlilik (uzluklilik, alohidalik). Algoritmda masalani yechish jarayoni alohida olingan sodda ko’rsatmalar ketma-ketligini qadamma-qadam bajarishdan iborat bo’lishi kerak. Bu xossa avvalgi darsdagi misollarda yaqqol ko’rinib turibdi.
4. Natijaviylik (cheklilik). Algoritmni tavsifida biror maqsadga erishishga qaratilgan jumlasi ishlatilgan. Bu maqsadni yuqorida keltirilgan misollarda korishimiz mumkin: choy damlash, g’ishtlar sonini hisoblash, yig’indini hisoblash. Bular algoritmning natijaviylik (cheklilik) xossasi bilan bog’liq. Bu xossaning mazmuni shundan iboratki, har qanday algoritm ijrosi chekli qadamdan so’ng oxir-oqibat ma’lum bir yechimga olib kelishi kerak. Shuni ta’kidlash joizki, algoritm avvaldan ko’zlangan maqsadga erishishga olib kelmasligi ham mumkin. Bunga ba’zan algoritmning notog’ri tuzilgani yoki boshqa xatolik sabab bo’lishi ham mumkin. Ikkinchi tomondan, qo’yilgan masala ijobiy yechimga ega bo’lmasligi ham mumkin. Lekin salbiy natija ham natija deb qabul qilinadi.
1 misol. kvadrat tenglama yechilsin.
Quyida keltirilgan ko’rinishidagi kvadrat tenglamani yechish algoritmini qo’llab, tenglama yechimga ega emasligini aniqlaymiz. Bu ham natijadir.
1) a, b, c qiymatlar aniqlansin;
2) diskriminant: hisoblansin;
3) agar D < 0 bo’lsa, tenglama yechimga ega emas deb olinsin va 6-bandga o’tilsin;
4) agar D = 0 bo’lsa, yagona yechim ga teng deb olinsin va 6-bandga o’tilsin;
5) birinchi yechim ga, ikkinchi yechim ga teng deb olinsin;
6) tugallansin.
E’tibor qilgan bo’lsangiz diskriminantning noldan kichikligi, nolga tengligi tekshirildi, ammo noldan kattaligi tekshirilmadi. Sababini o’ylab ko’ring!
Demak, algoritm doimo chekli qadamdan iborat bo’lishi va biror natija berishi kerak ekan.
5. Ommaviylik. Biror masalani yechish algoritmi umumiy hollar uchun tuziladi, ya’ni faqatgina boshlang’ich ma’lumotlar bilan farqlanuvchi bir turdagi masalalar turkumi uchun tuziladi.
Yuqoridagi ko’rinishidagi kvadrat tenglamani yechish algoritmi ixtiyoriy a, b, c sonlar uchun natija beradi, ya’ni algoritmning ommaviylik xossasi o’rinlidir.
Quyida keltirilgan berilgan ikki natural sonning eng katta umumiy bo’luvchisini (EKUB) topishning Evklid algoritmi ham barcha natural sonlar uchun o’rinlidir.
2misol. N va M natural sonlarning eng katta umumiy bo’luvchisi topilsin.
1) agar N = M bo’lsa, N natija deb olinsin va 5 - bandga o’tilsin;
2) N va M sonlarning kattasi aniqlansin;
3) N va M sonlarning kattasi o’zi bilan kichik sonning ayirmasiga teng deb olinsin;
4) 1-bandga otilsin;
5) tugallansin.
Xulosa qilib shuni aytish mumkin: yuqoridagi barcha xossalar bajarilganda ko’rsatmalar ketma-ketligi algoritm bo’ladi va biror (ijobiy yoki salbiy) natijaga olib keladi.
IV. Mustahkamlash
Algoritmning qanday asosiy xossalari bor?
Tushunarlilik xossasi bajariladigan va bajarilmaydigan ko’rsatmaga misol keltiring.
Ko’rsatmalar ijrochiga tushunarli bo’lishi uchun qanday sistemadan olinishi kerak?
Ijrochi algoritmni mexanik ravishda bajarishi uchun qanday xossa ahamiyatli?
Algoritmning diskretlilik xossasini misollar asosida tushuntiring.
Algoritmning natijaviylik xossasini misollar asosida tushuntiring.
Natijaviylik xossasi bajarilmaydigan ko’rsatmalar ketma-ketligiga misol keltiring.
Algoritmning ommaviylik xossasini misollar asosida tushuntiring.
Evklid algoritmi yordamida bir nechta natija oling.
V. Uyga vazifa
1-9-savollarga javob topish
Do'stlaringiz bilan baham: |