logo

Algoritmlar va ularni yozish usullari, hisoblash jarayonlari

Yuklangan vaqt:

08.08.2023

Ko'chirishlar soni:

0

Hajmi:

41 KB
Algoritmlar va ularni yozish usullari, hisoblash
jarayonlari
Reja:
1.  Algoritm va algoritmlash tushunchasi
2.  Algoritmning xossalari
3. Hisoblash jarayonlari.
  1. Respublikamiz qishloq xo’jalik o’quv yurtlarida yuqori malakali, xozirgi
zamon   talablariga   to’la   javob   beradigan   etuk   iqtisodchi,   hisobchi,   zooinjener,
zootexnik,   agronom,   menedjer,   tadbirkor,   ishbilarmon,   marketing   va   boshqa
mutaxassislarni tayyorlash va qayta tayyorlash xozirgi zamon talabidir.
Respublikamiz   Mustaqillikga   erishgandan   so’ng   shaxsiy   kompyuterlarning
keng tarqalishi, har bir kasbdagi kishilarning bilim darajasiga, kompyuter sabog’ini
egallashga   bo’lgan   talabini   oshirib   yubordi.   Кompyuter   savodi   so’zining   paydo
bo’lishi,   kompyuter   tuzilishi   va   ishlashi   hamda   ular   bilan   uzviy   bog’liq   bo’lgan
jarayonlarni  algoritmlash va dasturlash kabi  asosiy tushunchalarga borib taqaladi.
Har  -  kuni   -  turmushda,  -  ishda,  -   o’quv  jarayonida  ko’plab masalalarni  echishga
to’g’ri   keladi.   Bu   masalalarning   mazmuni   matematika   va   boshqa   fanlar   bilan
bog’lanishi   shart   emas.   Tez-tez   shunday   voqeliklar   yuzaga   kelib   turadiki,   bunda
ularni echish, yaxshi echim usullarini aniqlash lozim bo’lib qoladi. Bu masalalarni
hal qilishda bir qancha yo’llar, ya’ni usullar bo’lishi mumkin. Butun umr bo’yi biz
shu   masalalarni   hal   qilish   yo’llarini   va   ularning   eng   qulay   usullarini   topishga
harakat   qilamiz.   Hayot   o’zi   algoritmdan   iborat   bo’lib,   har   bir   kishining   kundalik
ishi ma’lum tartibda bajariladi.
Bizning har birimiz harid qilish uchun magazinga kiramiz. Eslab ko’ring siz
harid   qilish   uchun   magazinga   kirishdan   avval   nima   qilasiz.   Ma’lum   bo’lishicha,
magazinga   kirishdan   avval   fikran   qancha   mablag’ingiz   borligini   (kirish
ma’lumotlari) va qanday narsalar sotib olishingiz (chiqish ma’lumotlari) zarurligini
aniqlaysiz.   So’ngra   qaysi   yo’l   bilan   borib,   qaysi   magazinlarga   kirib   kerakli
narsalarni   harid   qilishni   o’ylaysiz.   Balki   magazinga   bir   necha   yo’l   orqali   borish
mumkin.   Bu   vaqtda   siz   zaruriy   yo’lni   tanlab   olishga   imkoniyat   beruvchi   shartni
aniqlaysiz.   Masalan:   Siz   magazinga   kirasiz,   u   erda   sizga   zarur   narsalar   yo’q.   Bu
vaqtda nima qilish kerak, kerakli narsalarni harid qilish uchun izlab qaerga borish
kerak yoki bu niyatdan butunlay qaytish kerakmi. Bu holatlarni siz oldindan ko’rib
chiqqansiz, nima qilish zarurligini bilasiz.
Avvaldan   o’ylab   qo’yilgan   bunday   qoida,   agar   matematik   termindan
foydalanilsa,   algoritm   deb   atalishi   mumkin.   Inson   hech   qachon   o’ylamasdan kutilgan   natijaga   olib   kelmovchi   biror   harakatni   qilmaydi.   Amalda   bizning
miyamiz   doimo   algoritmlarni   tuzish   bilan   band   bo’lib,   ma’lum   maqsadga
erishishning yo’llarini o’ylaydi va izlaydi.
2. Algoritm quyidagi xossalarga ega bo’lishi kerak:
-   bir   qiymatlilik,   ya’ni   hamma   narsa   oldindan   aniqlangan   va   hech   qanday
ixtiyoriylikka joy yo’q;
- ommaviylikligi, ya’ni keng masalalar sinfining boshlangich ma’lumotlarini
turli variantlarda va ixtiyoriy mashinada ishlatilishi;
- natijaviyligi, ya’ni oxirgi natijani olishga majburligidir.
Algoritm   deganda   ijrochiga   ko’rsatilgan   maqsadga   erishish   yoki   qo’yilgan
masalani  echishga qaratilgan amallar ketma-ketligini bajarish uchun tushunarli va
aniq ko’rsatmalarni berish tushuniladi.
Algoritm   so’zi   arifmetik   amallarni   bajarish   qoidalarini   bayon   qilgan   IX
asrning   buyuk   matematigi   Al-Xorazmiy   nomini   lotincha   shaklidir.   Dastavval
algoritmlar   deganda   ko’p   xonali   sonlar   bilan   to’rt   arifmetik   amal   bajariladigan
qoida   tushunilar   edi.   Кeyinchalik   bu   tushuncha   qo’yilgan   masalani   echishga   olib
keladigan qoida va amallarni ketma-ketligini belgilash uchun qo’llanila boshlandi.
Algoritmni   yozishning   bir   qancha   usullari   bor.   Jarayonlarni   algoritmlashni
so’z   bilan   ifoda   qilish,   grafik   usulda   hamda   jadval   usulida   yozish   mumkin.
Algoritmlarni   yozishning   eng   ko’p   tarqalgan   usullaridan   biri-uni   blok-sxema
tarzida   ifodalashdan   iboratdir.   Bloklarning   geometrik   shakllari,   sxemalar   tuzish
qoidalari   davlat   standartiga   mos   ravishda   belgilangandir.   Shartli   bloklarning
mavjudligi   va   ularning   boshqa   bloklar   bilan   bog’liqligiga   qarab   chiziqli,
tarmoqlanuvchi,   takrorlanuvchi   blok-sxemalar,   shuningdek   ularning
kombinasiyalari bo’lishi mumkin.
1.   Algoritmlar   blok-sxemalari-har   bir   amalga   mos   tarzda   (boshlang’ich
ma’lumotlarni   kiritish,   hisoblash,   tekshirish,   takrorlashni   boshqarish,   natijalarni
chiqarish, hisoblashlarni tugatash) har xil geometrik shakllardan iborat bloklardan tashkil   topadi.   Bloklar   bajarilish   tartibi   bo’yicha,   yuqoridan   pastga,   chapdan
o’ngga tomon chiziqlar bilan tutashtiriladi.
2.   Chiziqli   hisoblash   jarayonini   algoritmlashda   qaysi   ko’rinishdagi
algoritmdan   foydalanish   maqsadga   muvofiqligini   bilish   uchun   algoritmlar
turkumlanishini   tahlil   qilib,   ular   orasidagi   aniq   konstruksiyaga   ega   bo’lganini
ajratib olishga harakat qilamiz. Yuqorida biz magazinga harid qilish uchun kirish
ketma-ketligi,   ya’ni   harakat   zanjirini   algoritmini   ko’rgan   edik.   Bu   algoritmni
qo’shimcha shart qo’shib birmuncha boshqacharoq tuzamiz: agar magazinda bizga
kerakli   narsalar   bo’lmasa   nima   qilish   kerak   va   bizning   harakatimiz   qaysi
yo’nalishga   o’zgaradi.   Shunday   qilib,   birinchi   holda   biz   chiziqli   algoritmga   ega
bo’lamiz, ikkinchi holda esa - tarmoqlangan algoritmga, bunda shartga asosan bir
necha   harakat   ketma-ketligi   (harakat   yo’nalishi)   bo’lishi   mumkin.   Blok-sxemali
shaklda ifodalash usulidan foydalanib, bu algoritmlarning tuzilish qoidasini ko’rib
chiqamiz.
Chiziqli algoritmda mantiqiy shartlar yo’q va u bitta hisoblash shohchasiga
egadir.   Hisoblash   shohchasi   hisoblash   yo’nalishi   deb   ataladi.   Chiziqli   algoritm
bloklarini   bir-biri   bilan   boglangan   chiziqli   ketma-ketlik   ko’rinishida   tasvirlanadi.
Chiziqli   algoritmni   shartli   tasvirlanishi   quyidagicha   bo’ladi:   (bunda   A1,   A2,   A3,
….An har-xil harakatlar)
Tarmoqlangan algoritm bir va bir necha mantiqiy shartlarni o’z ichiga oladi
va bir nechta hisoblash shoxchalariga ega.
Grafik tasvirlashda mantiqiy shartlar mantiqiy blok ichiga yoziladi va ikkita
"ha" va "yo’q" chiqishiga ega bo’lgani uchun ikkita hisoblash shoxchasini  tashkil
etadi. Har bir shoxcha bo’yicha harakatlanganda keyingi mantiqiy blokni uchratish
mumkin,   bu   blok   ham   ikkita   shoxchaga   ega   va   hakozo.   Tarmoqlangan   algoritm
murakkab   strukturasi   daraxtni   ildizi   bilan   tepaga   qaralganini   eslatadi.   Faqat   bitta
narsani   esda   tutish   kerak.   Algoritm   sodda   yoki   murakkab   strukturaga   ega
bo’lishidan qatiy nazar bitta "tamom" blokiga egadir. Hamma shoxchalar, harakat
qaysi  shoxchadan  boshlangandan  qatiy  nazar  oxirida  bir  joyda   uchrashishi  kerak,
ya’ni har doim "tamom" blokiga chiqishi shart. Bizga   ma’lumki,   maktabda   birinchi   sinfda   o’qituvchi   arifmetik   amallarni
bajarish,   so’zlarni,   gaplarni   yozish   qoidalari   to’g’risida   gapirib   bergan.   Har   xil
berilgan   ma’lumotlar   uchun   bitta   qoidani   juda   ko’p   marta   ishlatish   mumkinligini
tushunganmiz.   Masalan:   har   qanday   sonlar   uchun   qo’shish   qoidasi   to’g’riligi,
egani  turlanishida  aniq qo’shimchalarni  qabul  qilish qoidasi  va hakozo. Bu  holda
biz   ko’p   marotaba   ishlatiladigan   algoritmga   duch   kelamiz.   Xuddi   shunday
algoritmlar takrorlanuvchi algoritm deb nom olgan. Chunki kompyuterning asosiy
vazifasi   insonni   aql   ishlatmaydigan   faoliyatidan,   ya’ni   bir   formula   orqali
hisoblashlardan,   bir   xil   matnni   ko’p   marotaba   bosib   chiqarishdan   ozod   qiladi.
Shuning   uchun   takrorlash   algoritmini   tuzishni   aniq   qoidasini   tushinish,   esda
saqlash juda ham zarurdir va uni har qanday algoritmini tuzishda unutmaslik kerak.
Takrorlash-bu   algoritmni   ko’p   marotaba   takrorlanuvchi   qismidir.
Takrorlanuvchi algoritm-bu bitta yoki bir nechta takrorlashlarni o’z ichiga oluvchi
algoritmdir. Takrorlash parametri - bu takrorlanishga har bir yangi kirishda yangi
qiymatlarni qabul qiluvchi o’zgaruvchidir.
Shuningdek, takrorlanuvchi algoritmlarda bitta takrorlanish ichida yana bitta yoki 
bir nechta boshqa takrorlanishlar yotishi mumkin. Bu holda hammasini o’z ichiga 
oluvchi tashqi, u ichiga oluvchilar esa ichki takrorlanishlar deb ataladi.
Tashqi va ichki takrorlanishlarni tashkil etish qoidasi xuddi oddiy 
takrorlanishnikidekdir. Tashqi va ichki takrorlashlarning parametrlari bir vaqtda 
o’zgarmaydi, ya’ni tashqi takrorlanishni o’zgaruvchisining bitga qiymatida ichki 
takrorlanishning o’zgaruvchisi hamma mumkin bo’lgan qiymatlarni qabul qilishi 
mumkin.

Algoritmlar va ularni yozish usullari, hisoblash jarayonlari Reja: 1. Algoritm va algoritmlash tushunchasi 2. Algoritmning xossalari 3. Hisoblash jarayonlari.

1. Respublikamiz qishloq xo’jalik o’quv yurtlarida yuqori malakali, xozirgi zamon talablariga to’la javob beradigan etuk iqtisodchi, hisobchi, zooinjener, zootexnik, agronom, menedjer, tadbirkor, ishbilarmon, marketing va boshqa mutaxassislarni tayyorlash va qayta tayyorlash xozirgi zamon talabidir. Respublikamiz Mustaqillikga erishgandan so’ng shaxsiy kompyuterlarning keng tarqalishi, har bir kasbdagi kishilarning bilim darajasiga, kompyuter sabog’ini egallashga bo’lgan talabini oshirib yubordi. Кompyuter savodi so’zining paydo bo’lishi, kompyuter tuzilishi va ishlashi hamda ular bilan uzviy bog’liq bo’lgan jarayonlarni algoritmlash va dasturlash kabi asosiy tushunchalarga borib taqaladi. Har - kuni - turmushda, - ishda, - o’quv jarayonida ko’plab masalalarni echishga to’g’ri keladi. Bu masalalarning mazmuni matematika va boshqa fanlar bilan bog’lanishi shart emas. Tez-tez shunday voqeliklar yuzaga kelib turadiki, bunda ularni echish, yaxshi echim usullarini aniqlash lozim bo’lib qoladi. Bu masalalarni hal qilishda bir qancha yo’llar, ya’ni usullar bo’lishi mumkin. Butun umr bo’yi biz shu masalalarni hal qilish yo’llarini va ularning eng qulay usullarini topishga harakat qilamiz. Hayot o’zi algoritmdan iborat bo’lib, har bir kishining kundalik ishi ma’lum tartibda bajariladi. Bizning har birimiz harid qilish uchun magazinga kiramiz. Eslab ko’ring siz harid qilish uchun magazinga kirishdan avval nima qilasiz. Ma’lum bo’lishicha, magazinga kirishdan avval fikran qancha mablag’ingiz borligini (kirish ma’lumotlari) va qanday narsalar sotib olishingiz (chiqish ma’lumotlari) zarurligini aniqlaysiz. So’ngra qaysi yo’l bilan borib, qaysi magazinlarga kirib kerakli narsalarni harid qilishni o’ylaysiz. Balki magazinga bir necha yo’l orqali borish mumkin. Bu vaqtda siz zaruriy yo’lni tanlab olishga imkoniyat beruvchi shartni aniqlaysiz. Masalan: Siz magazinga kirasiz, u erda sizga zarur narsalar yo’q. Bu vaqtda nima qilish kerak, kerakli narsalarni harid qilish uchun izlab qaerga borish kerak yoki bu niyatdan butunlay qaytish kerakmi. Bu holatlarni siz oldindan ko’rib chiqqansiz, nima qilish zarurligini bilasiz. Avvaldan o’ylab qo’yilgan bunday qoida, agar matematik termindan foydalanilsa, algoritm deb atalishi mumkin. Inson hech qachon o’ylamasdan

kutilgan natijaga olib kelmovchi biror harakatni qilmaydi. Amalda bizning miyamiz doimo algoritmlarni tuzish bilan band bo’lib, ma’lum maqsadga erishishning yo’llarini o’ylaydi va izlaydi. 2. Algoritm quyidagi xossalarga ega bo’lishi kerak: - bir qiymatlilik, ya’ni hamma narsa oldindan aniqlangan va hech qanday ixtiyoriylikka joy yo’q; - ommaviylikligi, ya’ni keng masalalar sinfining boshlangich ma’lumotlarini turli variantlarda va ixtiyoriy mashinada ishlatilishi; - natijaviyligi, ya’ni oxirgi natijani olishga majburligidir. Algoritm deganda ijrochiga ko’rsatilgan maqsadga erishish yoki qo’yilgan masalani echishga qaratilgan amallar ketma-ketligini bajarish uchun tushunarli va aniq ko’rsatmalarni berish tushuniladi. Algoritm so’zi arifmetik amallarni bajarish qoidalarini bayon qilgan IX asrning buyuk matematigi Al-Xorazmiy nomini lotincha shaklidir. Dastavval algoritmlar deganda ko’p xonali sonlar bilan to’rt arifmetik amal bajariladigan qoida tushunilar edi. Кeyinchalik bu tushuncha qo’yilgan masalani echishga olib keladigan qoida va amallarni ketma-ketligini belgilash uchun qo’llanila boshlandi. Algoritmni yozishning bir qancha usullari bor. Jarayonlarni algoritmlashni so’z bilan ifoda qilish, grafik usulda hamda jadval usulida yozish mumkin. Algoritmlarni yozishning eng ko’p tarqalgan usullaridan biri-uni blok-sxema tarzida ifodalashdan iboratdir. Bloklarning geometrik shakllari, sxemalar tuzish qoidalari davlat standartiga mos ravishda belgilangandir. Shartli bloklarning mavjudligi va ularning boshqa bloklar bilan bog’liqligiga qarab chiziqli, tarmoqlanuvchi, takrorlanuvchi blok-sxemalar, shuningdek ularning kombinasiyalari bo’lishi mumkin. 1. Algoritmlar blok-sxemalari-har bir amalga mos tarzda (boshlang’ich ma’lumotlarni kiritish, hisoblash, tekshirish, takrorlashni boshqarish, natijalarni chiqarish, hisoblashlarni tugatash) har xil geometrik shakllardan iborat bloklardan

tashkil topadi. Bloklar bajarilish tartibi bo’yicha, yuqoridan pastga, chapdan o’ngga tomon chiziqlar bilan tutashtiriladi. 2. Chiziqli hisoblash jarayonini algoritmlashda qaysi ko’rinishdagi algoritmdan foydalanish maqsadga muvofiqligini bilish uchun algoritmlar turkumlanishini tahlil qilib, ular orasidagi aniq konstruksiyaga ega bo’lganini ajratib olishga harakat qilamiz. Yuqorida biz magazinga harid qilish uchun kirish ketma-ketligi, ya’ni harakat zanjirini algoritmini ko’rgan edik. Bu algoritmni qo’shimcha shart qo’shib birmuncha boshqacharoq tuzamiz: agar magazinda bizga kerakli narsalar bo’lmasa nima qilish kerak va bizning harakatimiz qaysi yo’nalishga o’zgaradi. Shunday qilib, birinchi holda biz chiziqli algoritmga ega bo’lamiz, ikkinchi holda esa - tarmoqlangan algoritmga, bunda shartga asosan bir necha harakat ketma-ketligi (harakat yo’nalishi) bo’lishi mumkin. Blok-sxemali shaklda ifodalash usulidan foydalanib, bu algoritmlarning tuzilish qoidasini ko’rib chiqamiz. Chiziqli algoritmda mantiqiy shartlar yo’q va u bitta hisoblash shohchasiga egadir. Hisoblash shohchasi hisoblash yo’nalishi deb ataladi. Chiziqli algoritm bloklarini bir-biri bilan boglangan chiziqli ketma-ketlik ko’rinishida tasvirlanadi. Chiziqli algoritmni shartli tasvirlanishi quyidagicha bo’ladi: (bunda A1, A2, A3, ….An har-xil harakatlar) Tarmoqlangan algoritm bir va bir necha mantiqiy shartlarni o’z ichiga oladi va bir nechta hisoblash shoxchalariga ega. Grafik tasvirlashda mantiqiy shartlar mantiqiy blok ichiga yoziladi va ikkita "ha" va "yo’q" chiqishiga ega bo’lgani uchun ikkita hisoblash shoxchasini tashkil etadi. Har bir shoxcha bo’yicha harakatlanganda keyingi mantiqiy blokni uchratish mumkin, bu blok ham ikkita shoxchaga ega va hakozo. Tarmoqlangan algoritm murakkab strukturasi daraxtni ildizi bilan tepaga qaralganini eslatadi. Faqat bitta narsani esda tutish kerak. Algoritm sodda yoki murakkab strukturaga ega bo’lishidan qatiy nazar bitta "tamom" blokiga egadir. Hamma shoxchalar, harakat qaysi shoxchadan boshlangandan qatiy nazar oxirida bir joyda uchrashishi kerak, ya’ni har doim "tamom" blokiga chiqishi shart.

Bizga ma’lumki, maktabda birinchi sinfda o’qituvchi arifmetik amallarni bajarish, so’zlarni, gaplarni yozish qoidalari to’g’risida gapirib bergan. Har xil berilgan ma’lumotlar uchun bitta qoidani juda ko’p marta ishlatish mumkinligini tushunganmiz. Masalan: har qanday sonlar uchun qo’shish qoidasi to’g’riligi, egani turlanishida aniq qo’shimchalarni qabul qilish qoidasi va hakozo. Bu holda biz ko’p marotaba ishlatiladigan algoritmga duch kelamiz. Xuddi shunday algoritmlar takrorlanuvchi algoritm deb nom olgan. Chunki kompyuterning asosiy vazifasi insonni aql ishlatmaydigan faoliyatidan, ya’ni bir formula orqali hisoblashlardan, bir xil matnni ko’p marotaba bosib chiqarishdan ozod qiladi. Shuning uchun takrorlash algoritmini tuzishni aniq qoidasini tushinish, esda saqlash juda ham zarurdir va uni har qanday algoritmini tuzishda unutmaslik kerak. Takrorlash-bu algoritmni ko’p marotaba takrorlanuvchi qismidir. Takrorlanuvchi algoritm-bu bitta yoki bir nechta takrorlashlarni o’z ichiga oluvchi algoritmdir. Takrorlash parametri - bu takrorlanishga har bir yangi kirishda yangi qiymatlarni qabul qiluvchi o’zgaruvchidir. Shuningdek, takrorlanuvchi algoritmlarda bitta takrorlanish ichida yana bitta yoki bir nechta boshqa takrorlanishlar yotishi mumkin. Bu holda hammasini o’z ichiga oluvchi tashqi, u ichiga oluvchilar esa ichki takrorlanishlar deb ataladi. Tashqi va ichki takrorlanishlarni tashkil etish qoidasi xuddi oddiy takrorlanishnikidekdir. Tashqi va ichki takrorlashlarning parametrlari bir vaqtda o’zgarmaydi, ya’ni tashqi takrorlanishni o’zgaruvchisining bitga qiymatida ichki takrorlanishning o’zgaruvchisi hamma mumkin bo’lgan qiymatlarni qabul qilishi mumkin.