|
NOSTANDART MASALALARNI YECHISHNI O'RGATISHDA AXBOROT TEXNOLOGIYALARDAN FOYDALANISHNI O'RGATISHDA
|
bet | 69/80 | Sana | 12.12.2023 | Hajmi | 1,93 Mb. | | #117182 |
Bog'liq Axborot texnologiyaNOSTANDART MASALALARNI YECHISHNI O'RGATISHDA AXBOROT TEXNOLOGIYALARDAN FOYDALANISHNI O'RGATISHDA
Algoritm so'zi va tushunchasi IX asrda yashab ijod etgan buyuk vatandoshiimiz Muhammad al-Xorazmiy nomi bilan uzviy bog'liq. Algoritm so'zi al-Xorazmiyning arifmrtikaga bag'ishlangan asarining dastlabki betidagi "Dixit Algoritmi" ("Dediki Alxorazmiy"ning lotincha ifodasi). Al-Xorazmiy birinchi bo'lib o'nlik sanoq sistemasining tamoyillarini va undan turli amallar bajarish qoidalarini asoslab berdi. Bu esa hisoblash ishlarini ixchamlashtirish va osonlashtirish imkonini yaratdi, chunki bu bilan o'sha davrda qo'llash rasm bo'lgan rim raqamlari va sonlarni so'z orqali yozib bajarishdagi noqulayliklar bartaraf etildi. Dastlab algoritm deyilganda o'nlik sanoq sistemasidagi sonlar ustida turli arifmetik amallar bajarish qoidalari tushunib kelingan. Demak, al-Xorazmiyning ilmiy asarlari fanga algoritm tushunchasining kiritilishiga sabab bo'ldi. Hozirgi kunda algoritm tushunchsi juda keng ma'noda qo' llaniladi.
Kundalik hayotimizda bizni o'rab olgan algoritmlar shunchalik ko'p va xilma-xil bo'lib, biz ularning turlarini ajrata olishimiz, xususiyatlari hamda tasvirlash va ishlash usullarini bilishimis losim.
Algoritm nima? Algoritm - biz o'rganayotgan kursda asos etib olingan tushunchalardan biri hisoblanadi, shuning uchun uning ta'rifi yoq. Biroq biz algoritmning mohiyatini aniq va qat'yiroq tushunishga harakat qilamiz. Algoritm deganda biror maqsadga erishishga yoki biror masalani yechishga qaratilgan ko'rsatmalarning (buyruqlarning) aniq, tushunarli, chekli hamda to'liq tizimi tushuniladi. Ko'rinib turibdiki bunday ko'rsatmalar tizimi turmushimizda juda ko'p uchraydi. Algoritmlarga misol sifatida taomlar tayyorlash retseptlarini, formulalarni, turli avtomatik qurilmalarni (videomagnitofon, kir yuvish mashinasi, mexanik yoki elektron o'yinchoqlarni) ishlatish bo'yicha yo'riqnomalarni, sport musobaqalari yoki ko'cha harakati qoidalarini keltirishimiz mumkin.
1-misol. Choy damlash algoritmi:
choynak qaynagan suv bilan chayilsin;
bir choy qoshiq miqdoridagi quruq choy choynakka solinsin;
choynakka qaynagan suv quyilsin;
choynakning qopqog'i yopilsin;
choynak ustiga sochiq yopib uch daqiqa dam yedirilsin.
Har kuni bir necha martadan bajaradigan ishimiz ham algoritmga misol bo'lar ekan. Algoritmni bajarishda ko'rsatmalarni berilgan ketma-ketlikda bajarish muhim ahamiyatga ega ekanligi, ikkinch banddagi ko'rsatma bilan uchinchisini yoki birinchi bilan to'rtinchi banddagi ko'rsatmalarning o'rnini almashtirish bizni oldimizga qo'ygan maqsadga erishtirmasligi yaqqol ko'rinib turibdi. Uning ustiga har bir ko'rsatmaning mazmuni algoritmni bajarayotgan kishi - ijrochi uchun aniq va ravshan bo'lishi lozim. Biz maqsadga erishishimiz uchun oddiy vazifalar ketma - ketligini tuzib oldik. Ikkinchi yoki beshinch banddagi jarayonlarni ikkiga bo'lish bilan ko'rsatmalarni yanada soddalashtirish imkoni ham mavjud. Demak, algoritmdagi har bir ko'rsatmani eng oddiy amallardan iborat qilib bo'laklashimiz mumkin ekan.
2-misol. y q a(bQcx) - dx formula bo'yicha qiymat hisoblash algoritmi:
c ni x ga ko'paytirib, natija R1 bilan belgilansin;
b ni R1 ga qo'shib, natija R2 bilan belgilansin;
a ni R2 ga ko'paytirib, natija R3 bilan belgilansin;
d ni x ga ko'paytirib, natija R4 bilan belgilansin;
R3 dan R4 ni ayrib, natija y ning qiymati deb hisoblansin.
Ushbu ko'rsatmalar ketma-ketligi berilgan formula bo'yicha tuzilgan. U to'laligicha qo'yilgan masalani hal etish algoritmidir. Bu algoritmni oddiy arifmetik amallarni bajarishni bilgan ijrochi, qanday formulaning qiymatini hisoblayotganini bilmasa ham, to'g'ri natija olishi mumkin. Chunki formuladagi ifodaning qiymatini hisoblash faqat oddiy arifmetik amallarni bandma-band tartib bilan bajarishga keltirib qo'yildi.
3- misol. O'quv dasturini ishga tushirish algoritmi:
disket konvertdan olinsin;
disket disk yuritgichning maxsus bo'linmasiga kiritilsin;
bo'linma qopqog'i berkitilsin;
kompyuter ishga tushirilsin;
dastur yuklangandan so'ng, ishlash boshlansin.
Bu kabi algoritmlardan yuqoridagi boblarni o'rganishda ham foydalangan edik. Mazkur algoritmda to'rtinchi bandni bajarish uchun oddiy ko'rsatmalardan iborat kompyuterni ishga tushurish algoritmidan foydalanamiz:
kompyuter elektr tarmog'iga ulansin;
displey (monitor) ulansin;
asosiy (sistemali) blok ulansin.
Yuqoridagi asosiy algoritmni aniqlashtiruvchi bu algoritmni yordamchi algoritm deb ataymiz. Shuningdek, agar kompyuterning printer, skaner kabi boshqa tashqi qurilmalari ham ishlatilishi lozim bo'lsa, u xolda ularni asosiy blokini yoqishdan avval ishga tushirish kerak.
Yoki, agar kompyuter oldindan ishlab turgan bo'lsa, u holda to'rtinchi bandni start berish ko'rsatmasi bilan almashtirish mumkin, ya'ni:
Ctrl, Alt, Delete tugmachalari birga bosilsin.
4-misol. Bir to'g'ri chiziqda yotmaydigan uch nuqta ( A, B, C) orqali o'tuvchi aylanani yasash algoritmi:
A va B, B va C nuqtalar to'g'ri chiziq kesmalari bilan tutashtirilsin;
AB kesmaga uning o'rtasidan perpendikulyar to'g'ri chisiq o'tkazilsin;
BC kesmaga uning o'rtasidan perpendikulyar to'g'ri chisiq o'tkazilsin;
perpendikulyarlarning kesishish nuqtasi O deb belgilansin;
markazi O nuqtada va radiusi OA ga teng bo'lgan aylana chizilsin.
Mazkur algoritmda ham kesmaning o'rtasidan perpendikulyar o'tkazish, berilgan radiusga ko'ra aylana chizish singari yasashga ko'mak beruvchi yordamchi algoritmlarni bilish zarur bo'ladi. Bunday oddiy algoritmlarni o'quvchilarning o'zlari mustaqil tuzishlari mumkin.
5- misol. Metroning "Mashinasozlar" bekatidan "Yoshlik" bekatiga borish algoritmi (marshrut algoritmi):
metroning " bekatida "Beruniy" yo'nalishidagi poezd vagoniga chiqilsin;
metroning "Alisher Navoiy" bekatida vagondan tushilsin;
metroning "Paxtakor" bekatiga o'tilsin;
shu bekatda "quot; yo 'nalishidagi poyezd vagoniga chiqilsin;
"Yoshlik" bekatida vagondan tushilsin.
Bu kabi biror manzilga borish algoritmlari bilan biz har kuni duch kelamiz. Muhimi, shundaki, bunday algoritmlardan ayrim kishilar emas, balki ko'pchilik foydalanishi mumkin. Keyingi misolda barcha o'quvchilar amal qilishlari kerak bo'lgan algoritmni ko'ramiz.
6- misol. "Svetofordan (uch chiroqli) foydalanish" algoritmi:
svetofor chirog'iga qaralsin;
qizil chiroq yongan bo'lsa, to'xtalsin;
sariq chiroq yongan bo'lsa, yurishga yoki to'xtashga tayyorlanilsin;
yashil chiroq yongan bo'lsa, yurilsin.
Misoldan ko'rinib turibdiki, bu jarayon tarmoqlangan, chunki ijrochining qanday harakat qilishi shartga, ya'ni svetoforning qaysi chirog'i yonib turganiga bog'liq.
7- misol. Sportchining tezligini aniqlash algoritmi:
startdan marragacha bo'lgan masofani o'lchab, uni s bilan belgilansin:
sportchi start olishi bilan vaqt o'lchagichning (sekundomerning) tugmasi bosilsin;
sportchi marraga yetib kelishi bilan vaqt o'lchagichning tugmasi bosilsin;
ko'rsatilgan vaqt qiymati t bilan belgilansin;
s ni t ga bo'lib, natija v bilan belgilansin va y sportchning tezligi deb olinsin.
8- misol. Telefondan foydalanish algoritmi:
telefon go'shagini ko'tarilsin;
agar uzluksiz signal eshitilsa, u holda zarur abonent raqamlari terilsin, aks holda telefon go'shagi o'rniga qo'yilsin va algoritm boshidan boshlab takrorlansin;
agar uzlukli uzun signallar eshitilsa, ulanish kutilsin,aks holda telefon go'shagi o'rniga qo'y ilsin va algoritmboshidan boshlab takrorlansin.
9-misol. y q ax Q b (a №0) ko'rinishdagi funksiyaning grafigini chizish algoritmi:
x uchun istagan bitta qiymat olinsin;
y ning shunga mos qiymati aniqlansin;
koordinata tekisligida birinchi nuqta belgilansin;
x uchyn boshqa bir qiymat olinsin;
y ning shunga mos qiymati aniqlansin;
koordinata tekisligida ikkinchi nuqta belgilansin;
ikkala nuqta orqali to'g'ri chiziq o'tkazilsin.
Yuqorida ko'rilgan barcha misollarimizda bitta umumiy tomonni kuzatamiz. Bu algoritmlardan qanday maqsad ko'zlanganligini bilmasdan turib ham uni muvaffaqiyat bilan bajarish mumkin. Demak, hayotda uchraydigan murakkab jarayonlarni boshqarishni yoki amalga oshirishni robotlar, kompyuterlar va boshqa mashinalar zimmasiga yuklashimiz mumkin ekan. Bu esa algoritmning g'oyatda muhim afzalligidir, chunki inson algoritmlarni to'g'ri tuzib bersa, o'z aqliy va jismoniy mehnatini yengillashtirib, ushbu ishlarni avtomatik tarzda bajarishni mashinalarga topshiradi.
Al - Xorazmiyning fan - texnikaga algoritm tushunchasining kiritilishidagi xizmatlari nimalardan iborat ?
Al - Xorazmiy va o'tmishdagi boshqa olimlarning algoritm tushunchasini shakillantirishdagi qo'shgan xissalarini tushuntirib bering.
Algoritmlash asoslari bo'yicha ilmiy izlanishlar olib borayotgan o'zbek olimlari va ilmiy maskanlar haqida nimalarni bilasiz ?
Algoritm deganda nimani tushunasiz ?
Algoritmga misollar keltiring.
Har qanday ko'rsatmalar ketma-ketligi algoritm bo'la oladimi ?
Algoritmlarning har kungi hayotimizdagi ahamiyati qanday ?
|
| |