A l g o r i t m t u s h u n c h a s i v a u n i n g v a z i f a s i
Algoritm so’zi o’rta asrlarda paydo bo’lib, buyo’q o’zbek mutafakkiri Al-Xorazmiyning
(783-855) ishlari bilan yevropaliklarning birinchi bor tanishishi bilan bog’liqdir. Bu ilmiy ishlar
ularda juda chuqur taasurot qoldirib algoritm (algoritmi) so’zining kelib chiqishiga sabab bo’ldiki, u
Al-Xorazmiy ismining lotincha aytilishidir.
Algoritm deganda, berilgan masalani yechish uchun ma‘lum tartib bilan bajarilishi kerak
bo’lgan chekli sondagi buyruqlar ketma-ketligini tushuniladi.
Biror masalani kompyuterda yechishda eng muhim va ma‘suliyatli ishlardan biri qo’yilgan
100
masalani yechish algoritmini yaratish bo’lib, bu jarayonda bajarilishi kerak bo’lgan hamma bo’lajak
buyruqlar ketma-ketligi aniqlanadi. Ma‘lumki, kompyuterning o’zi xech qanday masalani
yechmaydi, balki dastur ko’rinishida yozilgan algoritmni bajaruvchi hisoblanadi xolos. Shuning
uchun, algoritmda yo’l qo’yilgan xato hisoblash jarayonining noto’g’ri bajarilishiga olib keladi, bu
esa o’z navbatida yechilayotgan masalaning xato natijasiga olib keladi.
Biror sohaga tegishli masalani yechish algoritmini yaratish, algoritm tuzuvchidan shu sohani
mukammal bilgan holda, qo’yilgan masalani chuqur tahlil qilishni talab qiladi. Bunda masalani
yechish uchun kerak bo’lgan ishlarning rejasini tuza bilish muhim ahamiyatga ega. Shuningdek,
masalani yechishda ishtirok yetadigan ob‘ektlarning qaysilari boshlang’ich ma‘lumot (masalani
yechish uchun zarur bo’lgan ma‘lumotlar) va qaysilari natijaligini aniqlash, ular o’rtasidagi o’zaro
bog’lanishni aniq va to’la ko’rsata bilish lozim.
A l g o r i t m n i i f o d a l a s h u s u l l a r i , u n i n g x o s s a l a r i v a u n g a q o ’ y i l a d i g a n
t a l a b l a r
Masalani yechishning algoritmini turli usullar bilan ifodalash mumkin:
- so’z bilan;
- blok-sxemalar shaqlida;
- formulalar orqali;
- algoritmik tillar orqali va x.z.
Endi biror usulda tuzilgan algoritmning ayrim xossalari va algoritmga qo’yilgan ba‘zi bir
talablarni ko’rib chiqaylik:
1.
Algoritm har doim bir qiymatlidir, ya‘ni uni bir hil boshlang’ich qiymatlar bilan ko’p
marta qo’llash har doim bir hil natija beradi.
2.
Algoritm birgina masalani yechish qoidasi bo’lib qolmay, balki turli-tuman boshlang’ich
shartlar asosida ma‘lum turdagi masalalar to’plamini yechish yo’lidir.
3.
Algoritmni qo’llash natijasida chekli qadamdan keyin natijaga erishamiz yoki natijaga
erishish mumkin emasligi haqidagi ma‘lumotga ega bo’lamiz.
Yuqorida keltirilgan xossalarni har bir ijrochi o’zi tuzgan biror masalaning algoritmidan
foydalanib tekshirib ko’rishi mumkin. Masalan,
ax
2
+bx+c=0
kvadrat tenglamani yechish algoritmi uchun yuqorida sanab o’tilgan algoritmning xossalarini
quyidagicha tekshirib ko’rish mumkin:
- agar kvadrat tenglamani yechish algoritmi biror usulda yaratilgan bo’lsa, biz ijrochiga bu
algoritm qaysi masalani yechish algoritmi ekanligini aytmasdan a,b,c larning aniq qiymatlari uchun
bajarishni topshirsak, u natijaga erishadi va bu natija kvadrat tenglamalarning yechimi bo’ladi,
Demak, algoritmni ijro etish algoritm yaratuvchisiga bog’liq emas;
- xuddi shuningdek, a,b,c larga doim bir hil qiymatlar bersak, algoritm har doim bir hil natija
beradi, ya‘ni to’liqdir;
- yaratilgan bu algoritm faqatgina bitta kvadrat tenglamaning yechish algoritmi bo’lib
qolmay, balki u a,b,c larning mumkin bo’lgan barcha qiymatlari uchun natija hosil qiladi va shu
turdagi barcha kvadrat tenglamalarning yechish algoritmidir;
- algoritmning oxirigi xossasi o’z-o’zidan bajariladi, ya‘ni kvadrat tenglamani yechish
albatta chekli qadamda amalga oshiriladi.
Dastur tuzuvchi uchun EHMning ikkita asosiy parametri eng muhimdir: kompyuter
xotirasining xajmi va tezkorligi. Shuningdek, algoritm tuzuvchidan ikki narsa talab qilinadi.
Birinchidan, u tuzgan dastur kompyuter xotirasidan eng kam joy talab etisin, ikkinchidan, eng kam
amallar bajarib masalaning natijasiga erishsin. Umuman olganda, bu ikki talab bir-biriga qarama-
qarshidir, ya‘ni algoritmning ishlash tezligini oshirish, algoritm uchun zarur xotirani oshirishga olib
kelishi mumkin.
Algoritm tuzishda quyidagilarga amal qilinsa, qo’yilgan masalaning natijasini tez va to’g’ri
olish mumkin:
- qo’yilgan masalani to’g’ri o’qish va tushinib olish, masalaning asosiy maqsadini ajrata bilish;
- ishga dahldor qiyinchiliklarni aniq ko’rish va ortiqcha, masala yechimiga katta ta‘siri
101
bo’lmagan parametrlarni yo’qota bilish;
- qo’yilgan masalani bir-biriga bog’liq bo’lmagan mustaqil bo’laqlarga ajrata olish va ular
orasidagi bog’liqlikni to’g’ri tashkil etish;
- qo’yilgan masalaning yechimini olishda har bir bo’lak yechimlarni to’plamini bir butun holga
keltirish;
- masala yechimini sodda va tushunarli tilda bayon eta olish.
Do'stlaringiz bilan baham: |