ЭҲМ ларнинг пайдо бўлиши ( XX асрнинг 2-ярми) билан АЛГОРИТМ тушунчаси ПРОГРАММАЛАШТИРИШ тушунчаси билан боғланди.
Кўплаб алгоритмик тиллар пайдо бўлди: Фортран, Паскаль, Бейсик….
XII асрда Европада аль – Хорезми. математик трактатининг лотинча таржимаси чиқди. Ўша пайтлар Алгоритм деганда ўнлик саноқ системасида арифметик амалларнинг бажарилаш қоидалари назарда тутилган. Hozirgi davrda algoritm barcha soxalarda qo’llanib kelinmoqda.
Инглиз математиги Алан Тьюринг 1935 – 1936 йилларда «мантиқий ҳисоблаш машинаси» назариясини яратди. Ишлаб чиқилган «Тьюринг Машина»си бўлажак математиклар ва компьютерщиклар учун мажбурий ўқитиладиган бўлди. Лондон меҳмонхоналарининг бирида : «Бу ерда кодларнинг бузувчиси ва информатиканинг пионери Алан Тьюринг (1912 – 1954), туғилган» деб ёзиб қўйилган.
Рус математиги Андрей Марков 1947 йил «нормал алгоритм» тушунчасини киритди ва тизимлашган ва қатъий алгоритмлар умумий назариясини яратди. Белгини қайта ишлашга мўлжалланган замонавий тиллар (Пролог) Марковнинг «нормал алгоритм» ларига асосланади.
Таъриф. Алгоритм деб, бирор масалани ечиш учун маълум қоидага асосан бажариладиган амалларнинг чекли кетма-кетлигига айтилади ёки аниқ натижа берувчи содда ҳисоблашлар кетма-кетлиги.
Алгоритмнинг асосий хоссаларини ифодалаб кўрсатинг.
Algoritm samaradorligi. Javob berilishi kerak bo'lgan birinchi jiddiy savol: qanday qilib “samarali algoritm” tushunchasini aniqlash mumkin? Bir qarashda samaradorlikning ishchi ta'rifi quyidagicha ko'rinishi mumkin.
1- ta'rif: algoritm samarador deb ataladi, agar ma'lumotlar kiritilganda uni amalga oshirish tezkor bajarilsa.
Albatta, samaradorlik nisbiy tushuncha bo’lib, bir nechta algoritmlarni solishtirish orqali aniqlanadi.
Xossalari: Тушунарлилик –алгоритмда ижрочига берилаётган кўрсатмалар аниқ мазмунда бўлиши;
Дискретлилик – алгоритмларни чекли қадамлардан ташкил қилиб бўлаклаш имконияти ;
Чеклилик – бажарилаётган алгоритм чекли қадамларда натижага олиб келиши;
Натижавийлик - натижанинг бўлиши;
Оммавийлик – ҳар бир алгоритм мазмунига кўра бир турдаги масалаларнинг барчаси учун ҳам ўринли бўлиши .
Формаллик –командаларни механик бажариш имконияти.
Бу хосса роботлар, компьютерлар ва бошқа қурилмаларда командаларнинг кетма-кет бажарилишини таъминлайди.
Алгоритм турлари ифодалаб кўрсатинг.
Алгоритм турлари : Чизиқли алгоритм - деб ҳеч қандай шартсиз фақат кетма-кет бажариладиган жараёнларга айтилади.
Тармоқланувчи алгоритм - деб маълум шартларга мувофиқ бажариладиган кўрсатмалардан тузилган алгоритмга айтилади.
Такрорланувчи алгоритм - деб бирон бир шарт текширилиши ёки бирон параметрнинг ҳар хил қийматлари асосида такрорий хисблашларни бажарадиган алгоритмга айтилади.
Чизиқли алгоритм - деб ҳеч қандай шартсиз фақат кетма-кет бажариладиган жараёнларга айтилади. Чизиқли алгоритм структураси:
Algoritmni sinash - bu maxsus belgilangan testlar yoki test misollarida algoritmning to'g'riligi yoki noto'g'riligini tekshirish - ma'lum ma'lumotlar va natijalar bilan bog'liq muammolar (ba'zan ularni yaqinlashtirish etarli). Testlar to'plami minimal va to'liq bo'lishi kerak, ya'ni kirish ma'lumotlar to'plamining har bir alohida turini, ayniqsa alohida holatlarda, tekshirishni ta'minlaydi. Algoritmlarning ishlash vaqtlari: