logo

Algoritmika.Algoritmning xossalari va tasvirlari usullari

Yuklangan vaqt:

19.11.2024

Ko'chirishlar soni:

0

Hajmi:

686.81640625 KB
MAVZU: Algoritmika.Algoritmning xossalari va tasvirlari usullari
MUNDARIJA
I.Kirish ................................................................................................................................................................................... 2
II.Asosiy qism ........................................................................................................................................................................ 4
1. Algoritmning tavsifi ....................................................................................................................................................... 4
2. Algoritmning turlari ...................................................................................................................................................... 6
3.Algoritmning xossalari ................................................................................................................................................. 11
4.Algoritmning tasvirlash usullari ................................................................................................................................... 13
III.Xulosa .............................................................................................................................................................................. 16
IV.Foydalanilgan adabiyotlar .............................................................................................................................................. 17 I.Kirish
Algoritm -   amallarning   muayyan   tartibda   bajarilishi   haqidagi   aniq   qoida
(dastur).   Kibernetika   va   matematikanign   asosiy   tushunchalaridan   biri.   O rtaʻ
asrlarda sanoqning o nli tizimi  bo yicha to rt arifmetik amal  — ma lum bir turga	
ʻ ʻ ʻ ʼ
oid   masalalarni   yechishda   ishlatiladigan   qoidani   ba jariladigan   algoritm   deb
atashgan ."Bu   qoidalarni   matematikaga   IX   asrda   al-
Xorazmiy   kiritgan.   Yevropada   bunday   qoidalar   uning   tugilgan   yurtiga   nisbatan
lotinchalashtirilgan  (Algoritmus   yoki   Algorithmus   shaklida   „algorizm“   deyilgan),
keyinchalik   „algoritm“ga   aylangan".   Fanda   „Yevklid   algoritmi“,   „G iyosiddin	
ʻ
Koshiy   algoritmi“,   „Laure   algoritmi“,   „Markov   algoritmi“   deb   ataluvchi
algoritmlar ma lum. Algoritm tushunchasi  tobora kengayib borib, kibernetikaning	
ʼ
nazariy   va   mantiqiy   asosi   hisoblangan   algoritmlar   nazariyasi   paydo
bo ldi.	
ʻ   O zbekistonda	ʻ   bir   necha   ilmiy   tadqiqot   muassasalari   va   hisoblash
markazlarida   algoritmdan   foydalanish   sohasida   samarali   ishlar   olib   borilmoqda.
Masalan,   O zbekiston   Fanlar   Akademiyasi	
ʻ   „Kibernetika“   ilmiy   ishlab   chiqarish
birlashmasida,   O zbekistondagi   barcha   universitetlarda,   Toshkent   davlat   texnika	
ʻ
universitetida,   O zbekiston   Respublikasi   Makroiqtisod   va   statistika   vazirligi
ʻ
qoshidagi   Hisoblash   markazi   va   boshqa   muassasalarda   olib   borilayotgan   ishlar
bunga misol bo la oladi.	
ʻ
Algoritm deganda biror maqsadga erishishga yo`naltirilgan, ijrochi bajarishi
uchun   moljallangan   buyruqlarning   ketma-ketligi   tushuniladi.   Demak,   yuqorida
keltirilgan   misollardagi   buyruq   (yoki   ko`rsatma)lar   ketma-ketligi   algoritm   va   bu
algoritmlarni   bajarayotgan   inson   -   ijrochi   bo‘lar   ekan.   Birinchi   misoldagi
ko`rsatmalar   «Choy   damlash   algoritmi»   deb   ataladi.   Bundan   shunday   xulosaga
kelamiz:   inson   hayotida   ko`zlagan   maqsadiga   erishishi   uchun   ijrochi   sifatida
ko`plab   algoritmlarni   bajaradi.   Ko’pgina   algoritmlar   inson   uchun   odat   bo`lib
qolgan.  Masalan,  taom  tayyorlash,   ovqatlanish,  tartibli  kiyinish,   xonadan  chiqish,
yozish,   bir   joydan   ikkinchi   joyga   borish   va   hokazo.   Ko`rsatmalarning   tartibi
2 buzilishi   qanday   oqibatga   olib   kelishi   mumkinligini   o`zingiz   tasavvur   qilishingiz
qiyin emas.  
Algoritm   ijrochisi   -   algoritmda   ko`rsatilgan   buyruq   yoki   ko`rsatmalarni
bajara   oladigan   abstrakt   yoki   real   (texnik   yoki   biologik)   sistema.     Ijrochi   bajara
olishi mumkin bo`lgan ko`rsatma yoki buyruqlar to`plami ijrochining ko`rsatmalar
sistemasi (qisqacha, IKS) deyiladi. Masalan, «16 sonidan kvadrat ildiz chiqarilsin»
ko`rsatmasi   2-sinf   o`quvchisining   ko`rsatmalar   sistemasiga   tegishli   bo`lmaydi,
lekin   8-sinf   o`quvchisining   ko`rsatmalar   sistemasiga   tegishli   bo`ladi.   Shuni
ta’kidlash   joizki,   informatikada   algoritmning   asosiy   ijrochisi   bo`lib   kompyuter
xizmat qiladi.
Algoritmlar fanini o‘qitishdan maqsad — informatika o‘qituvchining kasbiy
sohasida egallashi lozim bo‘lgan bilimlar va amallarni qo'llash uchun ko‘nikma va
malakalami   shakllantirish   va   rivojlanishidan1iborat.   Ushbu   dasturda   har   bir   kasb
egasi uning faoliyat turidan qat’i nazar egallashi kerak bo’lgan tayanch mazmuniy
va amaliy ma’lumotlarni o‘z ichiga oladi. 
Algoritmlar fanining vazifasi: algoritm tushunchasi va uning turlari, algoritm
ijrochilari,   algoritmlami   tasvirlash   usullari,   Miniya   va   iteratsiya,   algoritmning
murakkabligi   tushunchasi,   samarali   algoritmlar   ishlab   chiqishning   asosiy   usullari
tillar   bilimlari   bilan   tanishtirish;   algoritmik   tillaring   milliy   tushunchalari:   steklar,
navbatlar,   daraxtlar,   algoritmlar   tahlili   saralash,   almashish   usulida   saralash,
saralashning   Sheyker,   Shella   usullari,   piramida   usulida   saralash,   turnir   usulida
saralash   va   ulardam   binar   qidiruv,   Fibonachchi   qidiruv,   binar   daraxt   bo‘yicha
qidiruv,muvozanatlashtirilgan   daraxt   bo‘yicha   qidiruv;   Rabin-Karp   algoritmi,
rekursiv   algoritmlar   bilan   tanishish;   paskal   dasturlash   tili,   dasturlash   tilining
alifbosi,   buyruqlar   tizimi   va   operatorlari,   ulaming   tiplari   va   massivlar,   chiziqü,
tarmoqlanuvchi   va   takrorlanuvchi   operatorlar,   funksiya   va   protseduralar,   fayllar
bilan   ishlash,   tilning   graflk   imkoniyatlari   haqidagi   ma’lumotlarga   ega   bo‘lishdan
iborat. 
3 II.Asosiy qism
1. Algoritmning tavsifi
  Algoritm  - bu cheklangan vaqt ichida muammoni yechish natijasiga erishish
uchun   ijrochining   harakatlar   ketma-ketligini   tavsiflovchi   aniq   ko'rsatmalar
to'plami.   Kompyuterlarning ishlashida  parallellik rivojlanishi  bilan "ketma-ketlik"
so'zi   "tartib"   degan   umumiyroq   so'z   bilan   almashtirila   boshladi.   Buning   sababi
shundaki,   algoritmning   ba'zi   harakatlari   birin-ketin   bajarilishi   kerak,   ammo
ba'zilari mustaqil  bo'lishi  mumkin. Kompyuter dasturlariga, shuningdek, masalan,
taom tayyorlashning aniq ta'riflangan retsepti  ham algoritm bo'lib, u holda ijrochi
shaxsdir. "Algoritm" ning yagona "haqiqiy" ta'rifi mavjud emas .
Algoritm   - bu muayyan masalalar to'plamini yechish bo'yicha operatsiyalar
ketma-ketligini   belgilaydigan   va   beshta   muhim   xususiyatga   ega   bo'lgan
cheklangan qoidalar to'plami: cheklilik, kirish, chiqish, samaradorlik.
  Algoritm   -   qat'iy   belgilangan   qoidalar   bo'yicha   bajariladigan   har   qanday
hisoblash tizimi, bu ma'lum bir qator bosqichlardan so'ng, muammoni hal qilishga
olib keladi. 
Algoritm   -   bu   bajaruvchiga   tushunarli   bo'lgan   buyruqlar   yordamida   yozib
olingan   obyektni   boshlang'ich   holatdan   yakuniy   holatga   o'tkazish   jarayonini
tavsiflovchi qat'iy aniqlangan harakatlar ketma-ketligi.
Algoritm  - bu cheklangan sonli bosqichda ma'lum natijani olishga qaratilgan
harakatlar ketma-ketligi. 
Algoritm   - buharakatlarning ketma-ketligi, yoki bu muammoni hal qilishga
olib keladi yoki nima uchun bu yechimni olish mumkin emasligini tushuntiradi.  
Algoritm  - bu aniq, bir qiymatli, cheklangan harakatlar ketma-ketligi bo'lib,
foydalanuvchi   ma'lum   bir   maqsadga   erishish   yoki   muayyan   sonli   bosqichda
muayyan   muammo   yoki   muammolar   guruhini   hal   qilish   uchun   bajarishi   kerak.
Ushbu ta'riflarning umumiy jihati shundaki, algoritm retseptdir. Retsept ma'lum bir
shaklda berilishi kerak. Bu matn bo'lishi mumkin - ba'zi alfavitdagi belgilar qatori,
4 jadval,   diagramma,   piktogramma   buyurtma   qilingan   to'plami   va   boshqalar.   Har
qanday algoritm o'z-o'zidan mavjud emas, balki ma'lum bir ijrochiga mo'ljallangan.
Algoritm  ushbu   algoritm  bajaradigan  ijrochining  buyruqlarida  tasvirlangan.
Ijrochi   harakatlarni   bajara   oladigan   obyektlar   ijrochining   muhitini   tashkil   qiladi.
Har   qanday   algoritmning   dastlabki   ma'lumotlari   va   natijalari   har   doim   algoritm
mo'ljallangan ijrochi muhitiga tegishli.
Algoritmik   til   sintaksisi   –   quyidagilarga   imkon   beradigan   qoidalar
to'plamidir. 
1.  Dastur   matnini   rasmiy   ravishda   tekshirish   (sintaktik   jihatdan   to'g'ri
dasturlar to'plamini ajratib ko'rsatish) 
2.  Ushbu   dasturlarni   tarkibiy   tuzilmalariga   va   oxir-oqibat   leksemalarga
ajratish. 
Algoritmik   tilning   semantikasi   –   bu   sintaktik   to'g'ri   dasturlar   va   mavhum
ijrochining   harakatlari   o'rtasidagi   yozishmalardir,   bu   bizga   mavhum   ijrochining
harakatlarining   qaysi   ketma-ketliklari   to'g'ri   kelishini   aniqlashga   imkon   beradi,
agar   bizda   berilgan   dastur   va   uning   berilgan   tashqi   muhiti   bo'lsa.   Tashqi   muhit
deganda   dastur   bajariladigan   mashinaning   xarakteristikalari   (ma'lumotlarning
aniqligi,   xotira   hajmi,   buni   bajarishda   foydalanish   mumkin   bo'lgan   boshqa
dasturlar va boshqalar) va uning bajarilishi paytida dasturga kiruvchi ma'lumotlar
oqimlari   tushuniladi.   Algoritmik   tilning   pragmatikasi   –   bu   dasturni   uning   aniq
bajarilishi bilan bog'laydigan narsadir. Bunday holda, xususan, quyidagilar yuzaga
keladi. 
1. Barcha ta'riflar aniq bo'lib qoladi ("aniqlanmagan", "amalga oshirish bilan
aniqlanadi" va boshqalar kabi tushunchalar chiqarib tashlanadi)
  2.   Amalga   oshirilganligi   sababli   qo'shimcha   konstruktsiyalar,   tavsiflovchilar
va boshqalar paydo bo'ladi. Ular quyidagilarni hisobga olishlari kerak: - kompyuter
va   hisoblash   muhitining   xususiyatlari;   -   qabul   qilingan   tilni   amalga   oshirish
sxemasining   xususiyatlari;   -   hisob-kitoblarning   samaradorligini   ta'minlash;   -
foydalanuvchilarning o'ziga xos xususiyatlariga e'tibor qaratish.
5 2.  Algoritmning turlari
Masala   yеchimining   algoritmi   ishlab   chiqilayotgan   davrda   asosan   uch   xil
turdagi   algoritmlardan   foydalanib ,   murakkab   ko’rinishdagi   algoritmlar   yaratiladi.
Algoritmning   asosiy   tur lariga   chiziqli   ,   tarmoqlanadigan     va   takrorlanadigan
ko’rinishlari   kiradi.   Murakkab   masalalarning   yеchimini   olish   algoritmlari
yuqoridagi   turlarining   barchasini   o’z   ichiga   olishi   mumkin.   Chiziqli   turdagi
algoritmlarda   bloklar   biri   kеti dan   boshqasi   joylashgan   bo’lib,   bеrilgan   tartibda
bajarila di. Bunday bajarilish tartibi “tabiiy tartib” dеb ham yuriti ladi. 
       Ko’p hollarda biron bir  oraliq natijaga bog’liq ravishda hisoblashlar  yoki  u
yoki boshqa ifodaga ko’ra amalga oshirilishi mumkin yani birorta mantiqiy shartni
bajari lishiga   bog’lik   holda   hisoblash   jarayoni   u   yoki   bu   tarmoq   bo’yicha   amalga
oshirilishi   mumkin.Bunday   tuzilishdagi   hisoblash   jarayo nining   algoritmi
“tarmoqlanuvchi   turdagi   algoritm”   dеb   ataladi.   Ko’pgina   hollarda   masalalarning
yеchimini   olishda   bitta   matе matik   bog’lanishga   ko’ra   unga   kiruvchi   kattaliklarni
turli   qiy matlariga   mos   kеladigan   qiymatlarini   ko’p   martalab   hisoblash   to’g’ri
kеladi. 
        Hisoblash   jarayonining   bunday   ko’p   martalab   tak rorlanadigan   qismi
“takrorlanishlar”   dеb   ataladi.   Takrorla nishlarni   o’z   ichiga   olgan   algoritmlar
“takrorlanuvchi turdagi algoritmlar” dеb ataladi. Takrorlanuvchi turdagi algo ritmni
yozish   va   chizish   o’lchamlarini   sеzilarli   darajada   qisqar tirish   takrorlanadigan
qismlarni ixcham ifodalash imkonini bе radi.
Chiziqli   algoritmlar da   asosan   hech   qanday   shart   tekshirilmaydi   va
jarayonlar   tartib   bilan   ketma   -   ket   bajariladi.   Demak,   chiziqli   algoritmlar   sodda
hisoblashlar yoki amallar ketma – ketligini ifodalaydi.
      1-misol.   Pifagor   teoremasi   bo‘yicha   uchburchakning   gipotenuzasini
hisoblashni: a) so‘zli; b) blok-sxemali algoritmni tuzing.
 Formulasi:   
a 2
+ b 2
= c 2
6 Bu   yerda   a   va   b   lar   uchburchak   katetlarini   uzunligi   c   -   uchburchak
gipotenuzasi.
a)so‘zli algoritmi:
1 ) boshlanishi ;
2)uchburchakning a va b katetlarini qiymatlari kiritilsin;
3) uchburchak   gipotenuzasi formula bilan
hisoblansin ;
4)hisoblash natijasi c ni qiymati chiqarilsin;
5) hisoblash tugatilsin(tamom)
1-rasm. Chiziqli algoritm uchun blok-sxema.
7 2-rasm.Chiziqli algoritm uchun misol.
Tarmoqlanuvch i   algoritm .   Tarmoqlanuvchi   algoritm   -   u   o‘zida   kamida
bitta shartni saqlaydi va kompyuter uni tekshirish natijasida ikkita mumkin bo‘lgan
shartlardan birini bajarishni ta’minlaydigan algoritmdir.
        Shart   operatori .   P rogrammalarda   amallar   yozilish   tartibida   ketma-ket   va
faqat   bir   marta   bajariladigan   holatlar,   ya’ni   chiziqli   algoritmlar   mavjud.   Amalda
esa   kamdan-kam   masalalar   shu   tariqa   yechilishi   mumkin.   Aksariyat   masalalar
yuzaga   keladigan   turli   holatlarga   bog’liq   ravishda   mos   qaror   qabul   qilishni
(yechimni)   talab   etadi.   C++   tili   programmaning   alohida   bo’laklarining   bajarilish
tartibini boshqarishga imkon beruvchi qurilmalarning yetarlicha katta majmuasiga
ega.   Masalan,   programma   bajarilishining   birorta   qadamida   qandaydir   shartni
tekshirish natijasiga ko’ra boshqaruvni programmaning u yoki bu bo’lagiga uzatish
mumkin (tarmoqlanuvchi algoritm). Tarmoqlanishni amalga oshirish uchun shartli
operatordan foydalaniladi. 
8 if   operatori .   if   operatori   qandaydir   shartni   rostlikka   tekshirish   natijasiga
ko’ra programmada tarmoqlanishni amalga oshiradi: 
if ( );
    Bu   yerda   har   qanday   ifoda   bo’lishi   mumkin,   odatda   u   taqqoslash   amali
bo’ladi. Agar shart 0 qiymatidan farqli yoki rost (true) bo’lsa, bajariladi, aks holda,
ya’ni   shart   0   yoki   yolg’on   (false)   bo’lsa,   h ech   qanday   amal   bajarilmaydi   va
boshqaruv if operatoridan keyingi operatorga o’tadi (agar u mavjud bo’lsa). 
  Tarmoqlanuvchi algoritmlarni dasturlashda shartsiz o`tish operatori, shartli
o`tish operatori va tanlash operatorlari ishlatiladi. Shartli o`tish operatori:
1-  usul: if (shart) {operator1;} else {operator2;}
2-  usul: if(shart){operator1;}
1-  usulda agar shart bajarilsa operator  h isoblanadi aks holda   2 - operator
h isoblanadi.   2-   usulda   agar   shart   bajarilsa   operato   1   s o`ng   operator   2
h isoblanadi aks holda operator   1  h isoblanmasdan operator   2  h isoblanadi.
Misol:
3- rasm . Tarmoqlanuvchiga oid misol.
9 Takrorlanuvchi   algoritm   deb,   biron   bir   shart   tekshirilishi   yoki   qandaydir
parametrning   har   xil   qiymatlari   asosida   algoritmda   takrorlanish   yuz   beradigan
jarayonlarga aytiladi.
Shunday   jarayonlar   ham   borki ,   ularning   ayrim   bo‘laklari   bir   necha   marta
takrorlanadi.
 Masalan, biror fandan test topshira olmagan, ya’ni “qoniqarsiz” baho olgan
o‘quvchi toki testdan “qoniqarli” baho olgunga qadar fanga oid mavzularni qayta-
qayta   o‘qishiga,   testga   tayyorlanishiga   to‘g‘ri   kelsa,   9!=1*2*3*4*5*6*7*8*9
ifodani hisoblash uchun esa 8 marta ko‘paytirish amalini bajarishga to‘g‘ri keladi .
Hisoblash   jarayonining   ko’p   marta   takrorlanadigan   qismi ichki	  sikl   tanasi
(jismi)   deb yuritiladi. Takrorlanuvchi algoritm 2 xil ko’rinishga ega bo’ladi:
Sikl - gacha   takrorlanuvchi algoritm quyidagi ko’rinishga ega
yo’q
sikl tanasi shart
ha
a)   sikl - gacha	
  ;
Bu   ko’rinishdagi   algoritmda   avval   sikl   tanasi   bajarilib,   so’ngra
sikldan   chiqish   sharti   tekshiriladi ,   ya’ni   sikl   tanasi   qo’yilgan   shart   bajarilib
turguncha takrorlanaveradi.
Sikl - hozircha     takrorlanuvchi algoritm quyidagi ko’rinishga ega:
yo’q
ha
shart   sikl tanasi
b) sikl - hozircha.
Bu   ko’rinishdagi   algoritmlarda   avval   shart   tekshiriladi ,   so’ngra   agar   shart
qanoatlantirsa ,   sikl tanasi bajariladi , aks holda hisoblash to’xtatiladi.
10 Takrorlanish   jarayonining   bu   ko’rinishi   ham   takrorlanish   soni   oldindan
ma'lum   bo’lmagan   hollarda   ishlatiladi.   Bunday   jarayonda   biror   buyruq   yoki
buyruqlar   tizimi   bеrilgan   shart   bajarilgunga   qadar   takror   va   takror   bajariladi.   Bu
jarayonni   avvalgisidan   farqi   shundaki,   bunda   takrorlanishning   tanasi   hеch
bo’lmaganda bir marta bo’lsa ham bajariladi, chunki takrorlanishdan chiqish sharti
takrorlanishning tanasi bajarilgandan kеyin tеkshiriladi.
3.Algoritmning xossal ari
      Algoritmning 5-ta asosiy xossasi bor:
Diskretlilik   (Cheklilik ).   Bu   xossaning   mazmuni   algoritmlarni   doimo   chekli
qadamlardan   iborat   qilib   bo‘laklash   imkoniyati   mavjudligida.   Ya’ni   uni   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.
Tushunarlilik.   Biz   kundalik   hayotimizda   berilgan   algoritmlar   bilan   ishlayotgan
elektron soatlar, mashinalar, dastgohlar, kompyuterlar, turli avtomatik va mexanik
qurilmalarni kuzatamiz.
Ijrochiga   tavsiya   etilayotgan   ko‘rsatmalar,   uning   uchun   tushinarli   mazmunda
bo‘lishi   shart,   aks   holda   ijrochi   oddiygina   amalni   ham   bajara   olmaydi.   Undan
tashqari, ijrochi har qanday amalni bajara olmasligi ham mumkin.
Har   bir   ijrochining   bajarishi   mumkin   bo‘lgan   ko‘rsatmalar   yoki   buyruqlar
majmuasi   mavjud,   u   ijrochining   ko‘rsatmalar   tizimi   (sistemasi)   deyiladi.   Demak,
ijrochi   uchun   berilayotgan   har   bir   ko‘rsatma   ijrochining   ko‘rsatmalar   tizimiga
mansub bo‘lishi lozim.
                  Ko‘rsatmalarni   ijrochining   ko‘rsatmalar   tizimiga   tegishli   bo‘ladigan   qilib
ifodalay   bilishimiz   muhim   ahamiyatga   ega.   Masalan,   quyi   sinfning   a’lochi
o‘quvchisi   "son   kvadratga   oshirilsin"   degan   ko‘rsatmani   tushinmasligi   natijasida
bajara   olmaydi,   lekin   "son   o‘zini   o‘ziga   ko‘paytirilsin"   shaklidagi   ko‘rsatmani
11 bemalol   bajaradi,   chunki   u   ko‘rsatma   mazmunidan   ko‘paytirish   amalini   bajarish
kerakligini anglaydi.
Aniqlik .   Ijrochiga   berilayotgan   ko‘rsatmalar   aniq   mazmunda   bo‘lishi   zarur.
Chunki   ko‘rsatmadagi   noaniqliklar   mo‘ljaldagi   maqsadga   erishishga   olib
kelmaydi.   Odam   uchun   tushinarli   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.
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   algorim   shu   xildagi   har   qanday
masalani   yechishga   yaroqli   bo‘lishi   kerak.  Masalan,   ikki   oddiy   kasrning   umumiy
mahrajini   topish   algoritmi,   kasrlarni   turlicha   o‘zgartirib   bersangiz   ham   ularning
umumiy   mahrajlarini   aniqlab   beraveradi.   Yoki   uchburchakning   yuzini   topish
algoritmi, uchburchakning qanday bo‘lishidan qat’iy nazar, uning yuzini  hisoblab
beraveradi.
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.
  Algoritmning   tasvirlash   usullari   .Yuqorida   ko‘rilgan   misol larda   odatda   biz
masalani   yechish   algoritmini   so‘zlar   va   matematik   formulalar   orqali   ifodaladik.
Lekin   algoritm   boshqa   ko‘rinishlarda   ham   berilishi   mumkin.   Biz   endi
algoritmlarning eng ko‘p uchraydigan turlari bilan tanishamiz.
12 4.Algoritmning tasvirlash usullari
Algoritmlarni   tasvirlashning   turli   usullaru   mavjud.   Quyida   algoritmlarni
tasvirlashning keng tarqalgan usullarini ko rib chiqamiz.ʻ
   1. Algoritmning so zlar yordamida ifodalanishi	
ʻ
Avval   keltirilgan   bir   qator   misollar   inson   og zaki   nutqida   qo llaniladigan	
ʻ ʻ
so zlar orqali ifodalangan edi (masalan, ko'chadan o tish algoritmi, g ishtlar sonini	
ʻ ʻ ʻ
hisoblash   algoritmi).   Algoritmning   bunday   tasvirlash   usulida   ijrochi   uchun
ko rsatma   jumlalar   orqali   ko rsatma   shaklida   beriladi.   Qo llanmada,   asosan,   shu
ʻ ʻ ʻ
usuldan foydalanamiz.
2. Algoritmning formulalar yordamida ifodalanishi
Bu   usul   matematika,   fizika,   kimyo   va   biologiya   kabi   fanlarda   ko plab	
ʻ
qo llanilaniladi. Yodingizda bo lsa, so zlar yordamida ifodalangan g ishtlar sonini	
ʻ ʻ ʻ ʻ
hisoblash  algoritmini  formula  orqali   ifodalagan  edik.  Formuladagi   «+», «-», «>»,
«»   kabi   arifmetik   amallarning   tartibiga   rioya   qilgan   holda   bajarilishi   ham
algoritmga   misol   bo ladi.   Avval   berilgan  	
ʻ
a x 2
+   bx+c   =   0   (a	≠ 0)   ko rinishidagi	ʻ
kvadrat   tenglamani   yechish»   algoritmining   quyidagi   formula   orqali   ifodasi   bilan
tanishsiz:
− b ±	
√ b 2
− 4 ac
2 a
   3. Algoritmning jadval yordamida ifodalanishi
Algoritmning   bu   ko rinishda   berilishi   ham   sizga   tanish.   Masalan,	
ʻ
matematikada   qo llanib   kelinayotgan   Bradis   jadvali   deb   nomlangan   to rt   xonali	
ʻ ʻ
matematik   jadval,   lotareya   yutuqlar   jadvali,   Mendeleyev   kimyoviy   elementlar
jadvali.   Bunday   jadvallardan   foydalanish   ma'lum   bir   algoritm   qo llashni   talab	
ʻ
etadi.
Biror   funksiyaning   grafigini   chizish   uchun   ham   funksiyaning   argument
qiymatlariga   mos   qiymatlar   jadvalini   hosil   qilamiz.   Bu   ham   algoritmning   jadval
ko rinishiga misol bo ladi.	
ʻ ʻ
    4. Algoritmning grafik shaklda ifodalanishi
13 Algoritmning   bu   ko rinishda   ifodalanishi   matematikada   chizilgan   grafik,ʻ
kerakli uyni oson topish uchun dahalarda o rnatilgan uylarning joylashish sxemasi,	
ʻ
avtobuslarning yo nalish sxemasi orqali sizga tanish.	
ʻ
Algoritmlash   asoslarini   o rganishning   yana   bir   qulay   grafik   shakli     blok-	
ʻ
sxema   usulidir.   Blok-sxemalar   bir   yoki   bir   nechta   buyruq   yoki   ko'rsatmani   aks
ettiruvchi   maxsus   geometrik   shakllar   bloklardan   tashkil   topadi.   Bloklar   yo nalish	
ʻ
chiziqlari orqali tutashtiriladi.
      R radiusli doiraning yuzasini hisoblash algoritmi tuzilsin.
Avval aytib o'tilganidek, algoritmda boshlang'ich qiymatlar o rniga ularning	
ʻ
nomlari   ishtirok   etishi   mumkin   va   bu   algoritmning   ommaviylik   xossasiga
aloqadorligini   bildiradi.   Bu   masalada   ham   radiuslar   guruhi   R   nomi   bilan
berilmoqda   va   uning   joiz   bosh-   lang'ich   qiymati   ixtiyoriy   haqiqiy   son   bo lishi	
ʻ
mumkin.   Eslatib   o'tamiz,   algoritmda   turli   nomlar   ishtirok   etishi   va   ular
boshlang'ich qiymatlar va natijalar nomi bo lishi ham mumkin. Masalaning quyida	
ʻ
keltirilgan   yechimidagi   S   nomi   masalani   yechimi   bo ladigan   natijalar   guruhining	
ʻ
nomidir.
Bu   masala   algoritmini   ikki   xil   usulda:   so zlar   yordamida   va   grafik   shaklda	
ʻ
tuzamiz:
1) Boshlanish;
2) R ning qiymati aniqlansin;
3) R ning R ga ko paytirib, S deb olinsin;	
ʻ
4) S'ni 3,14 ga ko paytirib, S deb olinsin;
ʻ
5) javob sifatida S yozilsin;
6) tugallansin.
   5. Algoritmning dastur shaklida ifodalanishi
Ma'lumki,   kompyuter   dasturlar   asosida   ishlaydi   va   boshqariladi.   Siz
hozirgacha   MS   Word,   MS   Paint   va   MS   Excel   kabi   amaliy   dasturlar   bilan
ishladingiz. Lekin har bir amaliy dastur ham juda katta va murakkab algoritmning
bir   ko rinishidir.   Demak,   bu   kabi   algoritmlar   bajarilishi   uchun   ular   algoritm	
ʻ
ijrochisiga, ya ni kompyuterga tushunarli bo lishi lozim.	
ʼ ʻ
14 Odatda,   algoritmning   kompyuter   tushunadigan   tilda   yozilishi   dastur   deb
ataladi. Kompyuter tushunadigan til esa dasturlash tili deb ataladi. Jahonda hozirgi
kunda   minglab   dasturlash   tillari   mav-   jud   va   yana   rivojlanib   bormoqda.   Hozirgi
kunda   keng   tarqalgan   va   o rganish   uchun   qulay   bo lgan   BASIC,   Pascal,   VBA,ʻ ʻ
Delphi, C dasturlash tillari o rganiladi.
ʻ
4-rasm. Blok-sxema tasvirlash usullari.
15 III.Xulosa
     Ushbu kurs ishini  qilishda men algoritm va uning turlari haqida zarur va
yetarlicha ma’lumot va ko’nikmalarga ega bo’ldim.
    Algoritmlar   biz   har   kuni   foydalanadigan   ko'plab   texnologiyalar   va
xizmatlar   ortidagi   jimjit   kuchlardir.   Ular   samaradorlikni   oshiradigan   va   turli
sohalardagi   tajribalarni   shaxsiylashtiradigan   keng   ko'lamli   ilovalarga   ega.Bundan
tashqari,   ular   qidiruv   tizimlarining   ishlashida   muhim   rol   o'ynaydi   va   sizning
so'rovlaringiz uchun eng mos natijalarni topish uchun internetdagi katta hajmdagi
ma'lumotlarni ko'rib chiqishga yordam beradi.
Aslini   olganda, algoritmlar   zamonaviy  texnologiyalarning  asosi   bo'lib, turli
sohalarda moslashtirilgan yechimlarni taklif qilish va jarayonlarni optimallashtirish
orqali hayotimizni oson, xavfsizroq va qiziqarli qilish uchun sahna ortida ishlaydi.
Ularning ilovalari deyarli cheksizdir.
16 IV.Foydalanilgan adabiyotlar
1.   Jumanov   I.I.,   Mingboyev   N.S.   Hisoblash   sistemalarining   informatsion
asoslari. Samarqand,: SamDU nashri, 2002, 107 bet.
2.  Mingbayev   N.S.,   Jumanov   I.I.   Informatika.-Samarqand,:   SamDU   nashri,
2002, 107 bet.
3.  Jumanov   I.I.,  Mingboyev   N.S.   Axborot   texnologiyalari   (1-qism:   axborot
texnologiyalarining qurilmaviy va dasturiy ta minoti), Samarqand,: SamDUʼ
nashri, 2005, 148 bet.
4. Jumanov I.I., Mingboyev N.S. Axborot texnologiyalari (2-qism: Axborot
texnologiyalarining informatsion ta minoti), Samarqand,: SamDU nashri, 2005, 70	
ʼ
bet.
5. A.A.Rustamovich. Algoritmlar nazariyasi bo‘yicha ma’ruzalar manti
 
INTERNET RESUSRLARI
1. https://www.datacamp.com/blog/what-is-an-algorithm
2.https://www.geeksforgeeks.org/fundamentals-of-algorithms/
17

MAVZU: Algoritmika.Algoritmning xossalari va tasvirlari usullari MUNDARIJA I.Kirish ................................................................................................................................................................................... 2 II.Asosiy qism ........................................................................................................................................................................ 4 1. Algoritmning tavsifi ....................................................................................................................................................... 4 2. Algoritmning turlari ...................................................................................................................................................... 6 3.Algoritmning xossalari ................................................................................................................................................. 11 4.Algoritmning tasvirlash usullari ................................................................................................................................... 13 III.Xulosa .............................................................................................................................................................................. 16 IV.Foydalanilgan adabiyotlar .............................................................................................................................................. 17

I.Kirish Algoritm - amallarning muayyan tartibda bajarilishi haqidagi aniq qoida (dastur). Kibernetika va matematikanign asosiy tushunchalaridan biri. O rtaʻ asrlarda sanoqning o nli tizimi bo yicha to rt arifmetik amal — ma lum bir turga ʻ ʻ ʻ ʼ oid masalalarni yechishda ishlatiladigan qoidani ba jariladigan algoritm deb atashgan ."Bu qoidalarni matematikaga IX asrda al- Xorazmiy kiritgan. Yevropada bunday qoidalar uning tugilgan yurtiga nisbatan lotinchalashtirilgan (Algoritmus yoki Algorithmus shaklida „algorizm“ deyilgan), keyinchalik „algoritm“ga aylangan". Fanda „Yevklid algoritmi“, „G iyosiddin ʻ Koshiy algoritmi“, „Laure algoritmi“, „Markov algoritmi“ deb ataluvchi algoritmlar ma lum. Algoritm tushunchasi tobora kengayib borib, kibernetikaning ʼ nazariy va mantiqiy asosi hisoblangan algoritmlar nazariyasi paydo bo ldi. ʻ O zbekistonda ʻ bir necha ilmiy tadqiqot muassasalari va hisoblash markazlarida algoritmdan foydalanish sohasida samarali ishlar olib borilmoqda. Masalan, O zbekiston Fanlar Akademiyasi ʻ „Kibernetika“ ilmiy ishlab chiqarish birlashmasida, O zbekistondagi barcha universitetlarda, Toshkent davlat texnika ʻ universitetida, O zbekiston Respublikasi Makroiqtisod va statistika vazirligi ʻ qoshidagi Hisoblash markazi va boshqa muassasalarda olib borilayotgan ishlar bunga misol bo la oladi. ʻ Algoritm deganda biror maqsadga erishishga yo`naltirilgan, ijrochi bajarishi uchun moljallangan buyruqlarning ketma-ketligi tushuniladi. Demak, yuqorida keltirilgan misollardagi buyruq (yoki ko`rsatma)lar ketma-ketligi algoritm va bu algoritmlarni bajarayotgan inson - ijrochi bo‘lar ekan. Birinchi misoldagi ko`rsatmalar «Choy damlash algoritmi» deb ataladi. Bundan shunday xulosaga kelamiz: inson hayotida ko`zlagan maqsadiga erishishi uchun ijrochi sifatida ko`plab algoritmlarni bajaradi. Ko’pgina algoritmlar inson uchun odat bo`lib qolgan. Masalan, taom tayyorlash, ovqatlanish, tartibli kiyinish, xonadan chiqish, yozish, bir joydan ikkinchi joyga borish va hokazo. Ko`rsatmalarning tartibi 2

buzilishi qanday oqibatga olib kelishi mumkinligini o`zingiz tasavvur qilishingiz qiyin emas. Algoritm ijrochisi - algoritmda ko`rsatilgan buyruq yoki ko`rsatmalarni bajara oladigan abstrakt yoki real (texnik yoki biologik) sistema. Ijrochi bajara olishi mumkin bo`lgan ko`rsatma yoki buyruqlar to`plami ijrochining ko`rsatmalar sistemasi (qisqacha, IKS) deyiladi. Masalan, «16 sonidan kvadrat ildiz chiqarilsin» ko`rsatmasi 2-sinf o`quvchisining ko`rsatmalar sistemasiga tegishli bo`lmaydi, lekin 8-sinf o`quvchisining ko`rsatmalar sistemasiga tegishli bo`ladi. Shuni ta’kidlash joizki, informatikada algoritmning asosiy ijrochisi bo`lib kompyuter xizmat qiladi. Algoritmlar fanini o‘qitishdan maqsad — informatika o‘qituvchining kasbiy sohasida egallashi lozim bo‘lgan bilimlar va amallarni qo'llash uchun ko‘nikma va malakalami shakllantirish va rivojlanishidan1iborat. Ushbu dasturda har bir kasb egasi uning faoliyat turidan qat’i nazar egallashi kerak bo’lgan tayanch mazmuniy va amaliy ma’lumotlarni o‘z ichiga oladi. Algoritmlar fanining vazifasi: algoritm tushunchasi va uning turlari, algoritm ijrochilari, algoritmlami tasvirlash usullari, Miniya va iteratsiya, algoritmning murakkabligi tushunchasi, samarali algoritmlar ishlab chiqishning asosiy usullari tillar bilimlari bilan tanishtirish; algoritmik tillaring milliy tushunchalari: steklar, navbatlar, daraxtlar, algoritmlar tahlili saralash, almashish usulida saralash, saralashning Sheyker, Shella usullari, piramida usulida saralash, turnir usulida saralash va ulardam binar qidiruv, Fibonachchi qidiruv, binar daraxt bo‘yicha qidiruv,muvozanatlashtirilgan daraxt bo‘yicha qidiruv; Rabin-Karp algoritmi, rekursiv algoritmlar bilan tanishish; paskal dasturlash tili, dasturlash tilining alifbosi, buyruqlar tizimi va operatorlari, ulaming tiplari va massivlar, chiziqü, tarmoqlanuvchi va takrorlanuvchi operatorlar, funksiya va protseduralar, fayllar bilan ishlash, tilning graflk imkoniyatlari haqidagi ma’lumotlarga ega bo‘lishdan iborat. 3

II.Asosiy qism 1. Algoritmning tavsifi Algoritm - bu cheklangan vaqt ichida muammoni yechish natijasiga erishish uchun ijrochining harakatlar ketma-ketligini tavsiflovchi aniq ko'rsatmalar to'plami. Kompyuterlarning ishlashida parallellik rivojlanishi bilan "ketma-ketlik" so'zi "tartib" degan umumiyroq so'z bilan almashtirila boshladi. Buning sababi shundaki, algoritmning ba'zi harakatlari birin-ketin bajarilishi kerak, ammo ba'zilari mustaqil bo'lishi mumkin. Kompyuter dasturlariga, shuningdek, masalan, taom tayyorlashning aniq ta'riflangan retsepti ham algoritm bo'lib, u holda ijrochi shaxsdir. "Algoritm" ning yagona "haqiqiy" ta'rifi mavjud emas . Algoritm - bu muayyan masalalar to'plamini yechish bo'yicha operatsiyalar ketma-ketligini belgilaydigan va beshta muhim xususiyatga ega bo'lgan cheklangan qoidalar to'plami: cheklilik, kirish, chiqish, samaradorlik. Algoritm - qat'iy belgilangan qoidalar bo'yicha bajariladigan har qanday hisoblash tizimi, bu ma'lum bir qator bosqichlardan so'ng, muammoni hal qilishga olib keladi. Algoritm - bu bajaruvchiga tushunarli bo'lgan buyruqlar yordamida yozib olingan obyektni boshlang'ich holatdan yakuniy holatga o'tkazish jarayonini tavsiflovchi qat'iy aniqlangan harakatlar ketma-ketligi. Algoritm - bu cheklangan sonli bosqichda ma'lum natijani olishga qaratilgan harakatlar ketma-ketligi. Algoritm - buharakatlarning ketma-ketligi, yoki bu muammoni hal qilishga olib keladi yoki nima uchun bu yechimni olish mumkin emasligini tushuntiradi. Algoritm - bu aniq, bir qiymatli, cheklangan harakatlar ketma-ketligi bo'lib, foydalanuvchi ma'lum bir maqsadga erishish yoki muayyan sonli bosqichda muayyan muammo yoki muammolar guruhini hal qilish uchun bajarishi kerak. Ushbu ta'riflarning umumiy jihati shundaki, algoritm retseptdir. Retsept ma'lum bir shaklda berilishi kerak. Bu matn bo'lishi mumkin - ba'zi alfavitdagi belgilar qatori, 4

jadval, diagramma, piktogramma buyurtma qilingan to'plami va boshqalar. Har qanday algoritm o'z-o'zidan mavjud emas, balki ma'lum bir ijrochiga mo'ljallangan. Algoritm ushbu algoritm bajaradigan ijrochining buyruqlarida tasvirlangan. Ijrochi harakatlarni bajara oladigan obyektlar ijrochining muhitini tashkil qiladi. Har qanday algoritmning dastlabki ma'lumotlari va natijalari har doim algoritm mo'ljallangan ijrochi muhitiga tegishli. Algoritmik til sintaksisi – quyidagilarga imkon beradigan qoidalar to'plamidir. 1. Dastur matnini rasmiy ravishda tekshirish (sintaktik jihatdan to'g'ri dasturlar to'plamini ajratib ko'rsatish) 2. Ushbu dasturlarni tarkibiy tuzilmalariga va oxir-oqibat leksemalarga ajratish. Algoritmik tilning semantikasi – bu sintaktik to'g'ri dasturlar va mavhum ijrochining harakatlari o'rtasidagi yozishmalardir, bu bizga mavhum ijrochining harakatlarining qaysi ketma-ketliklari to'g'ri kelishini aniqlashga imkon beradi, agar bizda berilgan dastur va uning berilgan tashqi muhiti bo'lsa. Tashqi muhit deganda dastur bajariladigan mashinaning xarakteristikalari (ma'lumotlarning aniqligi, xotira hajmi, buni bajarishda foydalanish mumkin bo'lgan boshqa dasturlar va boshqalar) va uning bajarilishi paytida dasturga kiruvchi ma'lumotlar oqimlari tushuniladi. Algoritmik tilning pragmatikasi – bu dasturni uning aniq bajarilishi bilan bog'laydigan narsadir. Bunday holda, xususan, quyidagilar yuzaga keladi. 1. Barcha ta'riflar aniq bo'lib qoladi ("aniqlanmagan", "amalga oshirish bilan aniqlanadi" va boshqalar kabi tushunchalar chiqarib tashlanadi) 2. Amalga oshirilganligi sababli qo'shimcha konstruktsiyalar, tavsiflovchilar va boshqalar paydo bo'ladi. Ular quyidagilarni hisobga olishlari kerak: - kompyuter va hisoblash muhitining xususiyatlari; - qabul qilingan tilni amalga oshirish sxemasining xususiyatlari; - hisob-kitoblarning samaradorligini ta'minlash; - foydalanuvchilarning o'ziga xos xususiyatlariga e'tibor qaratish. 5