Mavzu rejasi:
2.Algoritm va uning xossalari.
3.Algoritm turlari.
4.Algoritmik tillar.
5.Masalalarni echish bosqichlari.
6.Dasturlash vositalari
7.Ma’ruza bo‘yicha savollar.
1.Kirish
Algoritm so‘zi buyuk matematik Al-Xorazmiyning nomi bilan bog‘liq bo‘lib, u birinchi bo‘lib arab raqamlaridan foydalangan holda arifmetik amallarni bajarish qoidasini bayon etdi.
Har qanday qo‘yilgan masalani kompyuterda echish uchun oldin uning echish
usulini tanlab, keyin uning algoritmini ishlab chiqish kerak bo‘ladi. Demak, hech
bir masala yo‘qki uning echilish yo‘llarini bilmasdan va algoritmini tasavvur qilmasdan
turib uni kompyuterda echib bo‘lmaydi.
2.Algoritm va uning xossalari
Elektron hisoblash mashinalarining vujudga kelishiga qadar algoritmga har
xil ta’rif berib kelindi. Lekin ularning barchasi ma’no jihatdan bir-biriga juda
yaqin bo‘lib, bu ta’rif hozirgi kunda quyidagicha talqin qilinadi.
Ta’rif. Algoritm deb, qo‘yilgan masalani echish uchun ma’lum qoidaga
binoan bajariladigan amallarning chekli qadamlar ketma-ketligiga aytiladi.
Har qanday algoritm ma’lum ko‘rsatmalarga binoan bajariladi va bu ko‘rsatmalarga
buyruq deyiladi.
Algoritm quyidagi muhim xossalarga ega:
Aniqlik va tushunarlilik - deganda algoritmda ijrochiga berilayotgan ko‘rsatmalar aniq mazmunda
bo‘lishi tushuniladi.
Ommaviylik - deganda har bir algoritm mazmuniga ko‘ra bir turdagi masalalarning barchasi
uchun ham o‘rinli bo‘lishi tushuniladi.
Natijaviylik - deganda algoritmda chekli qadamlardan so‘ng albatta natija bo‘lishi tushuniladi.
Diskretlik - deganda algoritmlarni chekli qadamlardan tashkil qilib bo‘laklash imkoniyati
tushuniladi.
3.Algoritm turlari
Algoritmning uchta turi bor: chiziqli, tarmoqlanuvchi va takrorlanuvchi.
CHiziqli algoritm - deb hech qanday shartsiz faqat ketma-ket
bajariladigan jarayonlarga aytiladi.
Tarmoqlanuvchi algoritm - deb ma’lum shartlarga muvofiq bajariladigan ko‘rsatmalardan tuzilgan algoritmga
aytiladi.
Takrorlanuvchi
algoritm - deb biron bir shart tekshirilishi
yoki biron parametrning har xil
qiymatlari asosida algoritmda
takrorlanish yuz beradigan jarayonlarga aytiladi.
Algoritmlarni turli usullarda tasvirlash
mumkin. Masalan: so‘z bilan ifodalash; formulalarda berish; blok-sxemalarda tasvirlash;
dastur shaklida ifodalash va boshqalar.
Algoritmlarni blok-sxema ko‘rinishda tasvirlash
qulay va tushunarli bo‘lgani uchun
ko‘p ishlatiladi. Bunda algoritmdagi har bir ko‘rsatma o‘z shakliga ega. Masalan: parallelogramm ko‘rinishdagi
belgi ma’lumotlarni kiritish va chiqarish; to‘g‘ri to‘rtburchak belgisi
hisoblash jarayonini; romb belgisi
shartlarning tekshirilishini bildiradi.
Misollar: CHiziqli algoritmga doir: hisoblash algoritmini tuzing.
So‘zda berilishi: Blok-sxemada:
1.Boshlash.
2.x va u qiymatini kiritish.
3.z qiymatini hisoblash.
4.z qiymatini chiqarish.
5.Tamom.
Tarmoqlanuvchi algoritmga
doir:
Ikkita a va b sonlardan kattasini aniqlash algoritmini tuzing.
So‘zda berilishi: Blok-sxemada:
1.Boshlash.
2.a va b-qiymatini kiritish.
3.agar a>b bo‘lsa, natija a deb
olinib
5ga o‘tilsin.
4.natija b deb olinsin.
5.Tamom.
Takrorlanuvchi algoritmga doir:
yig‘indini hisoblash
algoritmini tuzing.
So‘zda berilishi: Blok-sxemada:
1. Boshlash.
2. S=0
3. i=1
4. S=1/i2
5. Agar i<100 bo‘lsa, u holda i=i+1 va 4 ga o‘tish.
Aks holda 6 ga.
6. S qiymati chiqarilsin.
7. Tamom
Hayotimizda algoritmlarni turli sohalarda ba’zan
bilgan holda ba’zan esa bilmagan holda ishlatamiz. Algoritmlar faqat matematik xarakterga
ega bo‘lmasdan ularni oddiy hayotiy turmushimizda ham ko‘p qo‘llaymiz. Masalan,
ovqat tayyorlash, choy damlash, biror berilgan ishni bajarish va boshqa. Bu ishlarni
bajarishda ma’lum bo‘lgan aniq ko‘rsatmalarni ketma ket bajaramiz. Agar bu ko‘rsatmalar
aniq bir ketma ketlik tartibida bajarilmasa kerakli natijani olaolmaymiz. Misol
tariqasida matematik xarakterga ega bo‘lmagan butelbrod tayyorlash algoritmini ko‘rib
chiqaylik. Bunda boshlang‘ich berilganlar: non, kolbasa va pishloq. Natija: butelbrod.
Butelbrod tayyorlash algoritmi:
·
non
bo‘lagini kesib olish;
·
kolbasa
va pishloq bo‘lagini kesib olish;
·
kolbasa
va pishloq bo‘lagini non bo‘lagi orasiga qo‘yish.
Agar bu jarayonning ketma ketlik o‘rinlari almashsa
yoki biror bir bosqich amalga oshirilmasa natija bo‘lmaydi.
4.Algoritmik tillar
Masalani echish algoritmi
ishlab chiqilgandan so‘ng dastur tuziladi. Dastur
- bu berilgan algoritmga asoslangan biror bir algoritmik tilda yozilgan ko‘rsatmalar,
ya’ni buyruqlar yoki operatorlar to‘plamidir. Dasturlash - esa bu dastur
tuzish jarayoni bo‘lib, u quyidagi bosqichlardan iboratdir:
·
dasturga bo‘lgan talablar;
·
qo‘yilgan masala algoritmini tanlash yoki ishlab chiqish;
·
dastur kodlarini (matnlari, buyruqlarni) yozish;
·
dasturni to‘g‘rilash va test o‘tkazish.
Hozirgi kunda juda ko‘plab algoritmik tillar mavjud
bo‘lib, ularni dasturlash tillari deb ataymiz. Algoritmik til - algoritmlarni bir xil va aniq yozish uchun
ishlatiladigan belgilashlar va qoidalar sistemasidir. Algoritmik til oddiy tilga
yaqin bo‘lib u matematik belgilarni o‘z ichiga oladi. Qo‘yilgan masalalarni echishga tuzilgan algoritmlarni to‘g‘ridan-to‘g‘ri mashinaga berib,
echib bo‘lmaydi, shu sababli yozilgan algoritmni biror bir algoritmik tilga o‘tkazish
zarur. Har qanday algoritmik
til o‘z qo‘llanilish sohasiga ega. Masalan, muxandislik hisob ishlarini bajarishda
Paskal, Beysik va boshqalar. Ro‘yxatlarni ishlash uchun PL/1 va boshqalar. Iqtisod
masalalarini echishda Paskal, Kobol va boshqalar. Mantiqiy dasturlash uchun Prolog
va boshqalar. O‘quv jarayonlari uchun Beysik,
Paskal va boshqalar.
Paskal, Fortran va Kobol
tillari universal tillardan hisoblanadi. Assembler tili mashina tiliga ancha yaqin
til bo‘lib o‘rta darajadagi tildir. Algoritmik til inson tillariga qancha yaqin bo‘lsa,
u tilga yuqori darajali til deyiladi. Mashina tili esa eng pastki darajali tildir.
5.Masalalarni
echish bosqichlari
Har qnday masalani kompyuterda chishdan oldin, odatda tayyorgarlik ishlari amalga oshiriladi. Ular qyidagilardan iborat:
1.Masalani qo‘yish va uning matematik modelini ishlab
chiqish. Ushbu bosqichda boshlang‘ich malumotlar tarkibi aniqlanadi. Masalani qo‘yish
odatda echiladigan masalaning asosiy xususiyatlarini og‘zaki tavsiflash bilan tugallanadi
va so‘ngra, masala matematik modeli yoziladi.
2.Echish usulini tanlash. Masala matematik ifodalanib
bo‘lgandan so‘ng uni echish usuli tanlanadi. Bunda izlanayotgan natijalarning boshlang‘ich
ma’lumotlarga bog‘liqligini aniqlaydi. Hozirgi zamon hisoblash matematikasi fan
va texnikaga oid turli masalalarni echish uchun ko‘plab sonli usullarga ega.
3.Masalani
echish algoritmini ishlab chiqish. Bu bosqichda kompyuterda masalani
echish uchun bajariladigan amallar (buyruqlar) ketma-ketligi tavsiflanadi. Biz buni
algoritmlash deb ataymiz.
4.Dasturlash. Bunda algoritm biror algoritmik
tilga ko‘chiriladi.
5.Dasturni kiritish va xatolarini tuzatish.
6.Masalani bevosita kompyuterda echish va natijalarni tahlil qilish. Bunda dasturda kerakli boshlang‘ich qiymatlar berilib
kompyuterda natija olinadi va tahlil qilinadi. Bu bosqichda agar kerak bo‘lsa algoritm
va dastur modernizatsiya qilinishi ham mumkin. YAngi olingan ma’lumotlar asosida
kerakli xulosalar ishlab chiqiladi. Bu ma’lumotlar qo‘yilgan masalani turlicha tahlil
qilishga, murakkab jarayonlarni tushunishga, olamshumul yangiliklarning ochilishiga,
yangi nazariyalarning, texnika mo‘‘jizalarining yaratilishiga xizmat qiladi. Umuman
olganda «Model-algoritm-dastur» uchligi modellashtirishning intelektual mag‘zini
tashkil etadi, bunday uchliksiz kompyuterda murakkab masalalarni echishda muvaffaqiyatga
erishib bo‘lmaydi.
6.Dasturlash vositalari
Dasturlash vositalarining asosiy vazifasi dastur tuzuvchilarga kompyuterda
dastur matnlarini kiritish, tahrirlash va ishga tushurish kabi bir qancha ishlarni
bajarishda qulaylik yaratadi.
Turbo Paskal datsurlash vositasi Paskal tilida kompyuterda dasturlar yaratish
uchun maxsus dastur bo‘lib xizmat qiladi. Turbo Pascal dasturlash vositasi ham o‘z
matn muhaririga ega bo‘lib, u ko‘p tomondan Turbo Basic, Turbo Prolog, Turbo C va boshqa dasturlash vositalarining matn muharrirlariga
o‘xshab ketadi. Turbo Pascal dasturlash vositasining dasturiy ta’minoti quyidagilardan
tashkil topgan:
Turbo.exe -asosiy dastur bo‘lib tizimni ishga tushiradi;
Turbo.tpl -dasturlar bibliotekasi;
Turbo.hlp -yordam chaqirish fayli;
Grapf.tpu -grafik
funksiya va protseduralar bibliotekasi;
CGA.bgi, EgaVga.bgi -monitor uchun
grafik drayverlari;
Tpc.exe -Pas kengaytmali
faylni Exe kengaytmali fayliga
o‘tkazadi.
Turbo
Pascal oynasi gorizontal menyu va dastur matnini kiritish maydonidan iborat.
Gorizontal
menyu quyidagilardan iborat:
File punkti quyidagi buyruqlar mavjud:
New - ekranni tozalash va operativ
xotirada yangi fayl ochish;
Save
-operativ xotiradagi dasturni asosiy xotiraga yozadi;
Save As -boshqa nom bilan dasturdan
nusxa ko‘chiradi;
Open
-kerakli faylni ochishb ekranga chaqiradi;
Exit -tizimdan chiqish.
Edit -punkti dastur matnini qayta tahrirlashda ishlatiladi.
Run -punkti xotiradagi dasturni bajarishga beradi. Bu buyruqni Ctrl-F9
tugmasini bosib bajarsa ham bo‘ladi.
Comple -punkti dasturni kompilyatsiya qilib xotiraga yozadi.
Options -punkti tizimning parametrlarini o‘zgartiradi.
Funksional tugmachalar vazifalari:
F1 -yordam chaqirish; F2 -faylni diskga saqlash;
F3 -faylni ishga tushurish; F5 -ekranni ochish va yopish;
F6 -ekranni aktiv holatga
o‘tkazish; F9 -dasturni qadam bilan bajarish;
F10 -bosh menyuga o‘tish.
Matn
muharirida tugmalar yordamida buyruqlarni berish.
Tugmani bosish
|
Buyruqning bajarilishi
|
Tugmani bosish
|
Buyruqning bajarilishi
|
Ctrl à
|
o‘nga bitta so‘z o‘tish
|
Ctrl N
|
qator
qo‘yish
|
Ctrl ß
|
chapga bitta so‘z o‘tish
|
Ctrl K B
|
blok boshini ajratish
|
Ctrl W
|
yuqoriga
siljish
|
Ctrl K K
|
blok oxirini ajratish
|
Ctrl Z
|
pastga siljish
|
Ctrl K T
|
so‘zni ajratish;
|
Home
|
qator
boshiga o‘tish
|
Ctrl K Y
|
ajratilgan blokni o‘chirish
|
End
|
qator
oxiriga o‘tish
|
Ctrl K S
|
Blokni ko‘chirish
|
Ctrl Home
|
birinchi qatorga
o‘tish
|
Ctrl U
|
buyruqni bekor qilish
|
Ctrl End
|
oxirgi qatorga
o‘tish
|
Ctrl F9
|
dasturni ishga tushurish
|
o‘ng yozuvni o‘chirish
|
Ctrl C
|
dasturni ishdan to‘xtatish
|
|
Ctrl Y
|
qatorni
olib tashlash
|
7.Ma’ruza bo‘yicha savollar
1.Algoritm nima?
2.Algoritm qanday xossalarga
ega?
3.Algoritmning
qanday turlari mavjud?
4.Algoritmni tasvirlashning qanday usullarini bilasiz?
5.Qanday algoritmik tillarni
bilasiz?
6.Masalani kompyuterda echish qanday bosqichlardan iborat?
7.Matematik model deganda nimani tushinasiz?
6.Qanday dasturlash vositalarini bilasiz?
7.Turbo Paskal dasturi matn muharririning
qanday buyruqlarini
bilasiz?
0 Comments