1.Algoritm so’zi va tushunchasi IX asrda yashab ijod etgan buyuk bobokalonimiz Muxammad al-Xorazmiy nomi bilan uzviy bog’liq bo’lib, uning arifmetikaga bag’ishlangan ―Al jabr va al muqobala‖ nomli asarining dastlabki betidagi ―Dixit Algoritmic‖ (―Dediki AlXorazmiy‖ning lotincha ifodasi) degan jumlalardan kelib chiqqan.Al-Xorazmiy birinchi bo’lib o’nlik sanoq tizimining prinsiplarini va unda turli amallar bajarish qoidalarini asoslab berdi. Bu esa hisoblash ishlarini ixchamlashtirish va osonlashtirish imkonini yaratadi. Chunki bu bilan o’sha davrda qo’llanilib kelingan rim raqamlari va sonlarini so’zlari orqali yozib bajarishdagi noqulayliklar bartaraf etildi.Dastlab algoritm deyilgan o’nlik sanoq tizimdagi sonlar ustida turli arifmetik amallar bajarish qoidalari tushunib kelingan.Al-Xorazmiyning ilmiy asarlari fanga algoritm tushunchasining kiritilishiga sabab bo’ldi.Algoritm nima? Umuman olganda uni aniq ta’riflash mushkul. Lyekin algoritmning mohiyatini aniq va qat’iyroq tushuntirishga harakat qilamiz.Algoritm deganda biror maqsadga erishishga yoki qandaydir masalani eychishga qaratilgan buyruqlarning aniq, tushunarli, chyekli hamda to’liq tizimi tushuniladi.
Algoritmga quyidagicha ta’rif berish mumkin: Algoritm deb aniq natijaga olib keladigan amallarning cheklangan ketma-ketligiga aytiladi.
Algoritmning xizmati nimadan iborat?
Algoritmlar-bu bilimlar ustida fikrlash va etkazib berishdan iborat. Xaqiqatan ham kimdir qanday masalani yechishi o’ylab topib va uni boshqalarga aytmoqchi bo’lsa, u holda o’ylab topgan yechimini shundaytasvirlashi kerakki, natijada boshqalar ham uni tushunsin, hamda shu tasvirga ko’ra boshqalar ham masalani to’g’ri yechsin. Shuning uchun tasvir bir necha talablarga bo’ysinishi kerak. Agar yechimning tasviri aniq bo’lmasa, u holda shu tasvirga asosan boshqa javobni olish mumkin. Chunki, xar kim masala yyechimining tasvirini noaniqjoyini o’zicha aniqlashtirishi mumkin. Bunday tasvirni algoritm deb bo’lmaydi. Algoritmlarga misol sifatidataomlar tayyorlash retseptini, formulalarini, turli avtomatik qurilmalarni ishlatish yo’lini, myexanik yoki elektron o’yinchoqlarni ishlatish bo’yicha yo’riqnomalarni, ko’cha xarakati qoidalarini keltirish mumkin. Algoritmga ba’zi misollar keltiramiz:
1-misol. Choy damlash algoritmi.
1)Choynak qaynagan suv bilan chayilsin;
2)Bir choy qoshiq miqdordagi quruq choy choynakka solinsin;
3)Choynakka qaynagan suv quyilsin;
4)Choynakning qopqog’i yopilsin;
5)Choynak ustiga sochiq yopib uch daqiqa tindirilsin.
Xar kuni necha martadan bajaradigan bu ishimiz xam algoritmga misol bo’la oladi.
Algoritmni ishlab chiqish uchun avvalo masalaning yechish yo’lini yaxshi tasavvur qilib olish, keyin esa formalashtirish, ya’ni aniq qoidalar ketma-ketligi ko’rinishida yozish kerak.Bu misollardan bitta umumiy tomonini kuzatish mimkin. Bu algoritmdan qanday maqsad ko’zlanganligini bilmasdan turib ham uni muvafaqiyat bilan bajarish mumkin. Dyemak, hayotda uchraydigan murakkab jarayonlarni boshqarishni yoki amalga oshirishni robotlar, kompyuterlar va boshqa mashinalar zimmasiga yuklashimiz mumkin ekan. Bu esa algoritmning juda muhim avzalligidir.Shunga ko’ra, har bir inson o’z oldiga qo’yilgan masalaning yechish algoritmini to’g’ri tuzib bera olsa, u o’z aqliy va jismoniy mehnatini yengillashtiribgina qolmay, bu ishlarni avtomatik tarzda bajarishni mashinalarga topshirishi ham mumkin.Algoritmni ishlab chiqishda masalani yechish jarayonini shunday formallashtirish kerakki, bu jarayon etarli darajadagi oddiy qoidalarning chekli ketma-ketligi ko’rinishiga keltirilsin. Masalan, biz ko’pincha ko’p xonali sonlar ustida asosiy arifmetik amallarni bajarishda vatondoshimiz Al-Xorazimiyning IX asrda yaratgan qoidalarini ishlatamiz. "Algoritm" atamasi ham ana shu buyuk matematik nomidan kelib chiqadi.