Texnologiyalari va kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xorazmiy



Yüklə 124,49 Kb.
Pdf görüntüsü
səhifə1/2
tarix25.12.2023
ölçüsü124,49 Kb.
#194081
  1   2
mustaqil ish 2 dasturlash



 
 
O’ZBEKISTON RESPUBLIKASI AXBOROT 
TEXNOLOGIYALARI VA 
KOMMUNIKATSIYALARINI RIVOJLANTIRISH 
VAZIRLIGI MUHAMMAD AL-XORAZMIY 
NOMIDAGI TOSHKENT AXBOROT 
TEXNOLOGIYALARI UNIVERSITETI 
QARSHI 
FILIALI “TELEKOMUNIKATSIYA 
TEXNOLOGIYALARI VA KASBIY TA`LIM 
“FAKULTETI 2-BOSQICH TT-11_22S-GURUH 
TALABASINING“
DASTULASH
” FANIDAN 
TAYYORLAGAN 
2-MUSTAQIL ISHI 
 
 
Bajardi : Hayitov. A 
Qabul qildi : Xudoyorov. L 


Qarshi - 2023 
MAVZU: CHIZIQLI JARAYONLARNI TAAHKIL ETISH(ALGORIT 
VA DASTUR) 
Reja: 
1.Algoritm nima.
2.U nechi turga bulinadi. 
3.Chiziqli jarayonlarni qanday tashkil etamiz 


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 birbiriga 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 b
ajariladi 
va bu 
ko‘rsatmalarga buyruq deyiladi.Algoritm quyidagi muhim 
xossalarga ega:
Aniqlik va tushunarlilik 

deganda algoritmdaijrochiga berilayotgan 
ko‘rsatmalar ani

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.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, cho

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: 
1.Non bo‘lagini kesib olish;
2.Kolbasa va pishloq bo‘lagini kesib olish;
3.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.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:


1.dasturga bo‘lgan 
talablar; 
2.qo‘yilgan masala algoritmini tanlash yoki ishlab chiqish;
3.dastur kodlarini (matnlari, buyruqlarni) yozish; 
4.dasturni to‘g‘rilash va test o‘tkazish.
Hozirgi kunda juda ko‘plab algoritmik tillar mavjud. Ularga 
dasturlash tillari deb ataymiz. Algoritmik til 

algoritmlarni bir 
xil va aniq yozish uchun ishlatiladigan belgilashlar va qoidalar
tizimidir. Algoritmik til oddiy tilga yaqin bo‘lib u matematik 
belgilarni o‘z ichiga oladi. Tuzilgan algoritmlarni to‘g‘ridan
-
to‘g‘ri mashinagaberib.bo‘lmaydi, shu sababli yozilgan 
algoritmni biror bir algoritmik tilga o‘tkazish zarur. Harq
anday 
algoritmik til o‘z qo‘llanilish sohasiga ega.Masalan, 
muxandislik hisob ishlarini bajarishda Paskal, Beysik va 
Fortran. Iqtisod masalalarini echishda Paskal va Kobol. 
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. 
Masalalarni echish bosqichlari Kompyuterda masalani echish 
bosqichlari quyidagilar: 
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 kompьyuterda 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 kompьyuterda echish va 
natijalarni tahlil qilish. Bunda dasturda kerakli boshlang‘ich 
qiymatlar berilib kompьyuterda natija olinadi va tahlil qilinadi. 
Bu bosqichda agar kerak bo‘lsa algoritm v
a 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.




MAVZU: ICHMA-ICH JOYLASHGAN SIKL JARAYONLARNI TASHKIL 
ETISH 
REJA: 
1.ICHMA-ICH JOYLASHBGAN SIKL JARAYONI
2.SIKL TANASI HAQIDA 
3.REKURENT ALGORITMLAR HAQIDA 


Dastur 
tuzish jarayonida shunday hollar yuz bеrishi mumkinki, bir sikl 
ichida boshqa bir siklni bajarishga to`g`ri kеladi. siklni tanasini 
tashkil etuvchi opеratorlar guruhi o`z navbatida sikl opеratori 
bo`lishi mumkin. Ayniqsa ko`p o`lchamli massivlarni elеmеntl
arini 
olish uchun indеksning qiymatlarini o`zgartirishga to`g`ri kеladi. 
Bunday sikllar ichma-
ich joylashgan sikllar dеyiladi. Ichma–
ich 
joylashgan takrorlanuvchi jarayonlar algoritmini takrorlash 
jarayonlarining algoritmidan osongina hosil qilish mumkin. 
Faqat ketma-ket bajariladigan amallardan tashkil topgan 
algoritmlarga - chiziqli algoritmlar deyiladi. Bunday algoritmni 
ifodalash uchun ketma-ketlik strukturasi ishlatiladi. Strukturada 
bajariladigan amal mos keluvchi shakl bilan ko‘rsatiladi. Chiziqli 
algoritmlar blok-sxemasining umumiy strukturasini quyidagi 
ko‘rinishda ifodalash mumkin
Bosh. n-amal 
Kiritiladigan qiymat chop etish 
1-amal tamom 
2-amal 
Agar hisoblash jarayoni biror bir berilgan shartning bajarilishiga 
qarab turli tarmoqlar bo‘yicha davom ettirilsa va hisoblash 
jarayonida har bir tarmoq faqat bir marta bajarilsa, bunday hisoblash 
jarayonlariga tarmoqlanuvchi algoritmlar deyiladi. Tarmoqlanuvchi 
algoritmlar uchun ayri strukturasi ishlatiladi. Tarmoqlanuvchi 
struktura berilgan shartning bajarilishiga qarab ko‘rsatilgan 
tarmoqdan faqat bittasining bajarilishini ta’minlaydi.
Takrorlanuvchi algoritmlar. Agar biror masalani yechish uchun 
tuzilgan zarur bo‘lgan amallar ketma
-
ketligining ma’lum bir qismi 
biror parametrga bog‘liq ko‘p marta qayta bajarilsa, bunday algoritm 
takrorlanuvchi algoritm yoki siklik algoritmlar deyiladi. 
Takrorlanuvchi algoritmlarga tipik misol sifatida odatda qatorlarning 
yig‘indisi yoki ko‘patmasini hisoblash jarayonlarini qarash mumkin.


Ichma-
ich joylashgan siklik algoritmlar . Ba’zan, takrorlanuvchi 
algoritmlar bir nechta parametrlarga bog‘liq bo‘ladi. Odatda bunday 
algoritmlarni ichma-ich joylashgan algortmlar deb ataladi. 
Ichma-ich joylashgan takrorlanuvchi jarayonlar asosan ikki va undan 
yuqori bo’lgan o’lchovli massivlarda kuzatiladi.
Ichma-ich joylashgan siklik algoritmlar. 
Ba’zan, takrorlanuvchi algoritmlar bir nechta parametrlarga bog‘liq 
bo‘ladi. Odatda bunday algoritmlarni ichma
-ich joylashgan 
algortmlar deb ataladi. 
Rekurrent algoritmlar. Hisoblash jarayonida ba’zi bir algoritmlarning 
o‘ziga qayta murojaat qilishga to‘g‘ri keladi. O‘ziga–o‘zi murojaat 
qiladigan algoritmlarga rekkurent algoritmlar yoki rekursiya deb 
ataladi. 
Bunday algoritmga misol sifatida Fibonachchi sonlarini keltirish 
mumkin. 
berib.bo‘lmaydi, shu sababli yozilgan algoritmni 
biror bir algoritmik tilga o‘tkazish zarur. 
Ichma-ich 
joylashgan takrorlanuvchi jarayonlarDastur tuzish jarayonida 
shunday hollar yuz bеrishi 
mumkinki, bir sikl ichida boshqa bir siklni 
bajarishga to`g`ri kеladi. Siklni tanasini tashkil etuvchi opеratorlar 
guruhi o`z navbatida sikl opеratori bo`lishi mumkin. Ayniqsa ko`p 
o`lchamli massivlarni elеmеntlarini olish uchun indеksning 
qiymatlarini o`z
gartirishga to`g`ri kеladi. Bunday sikllar ichma
-ich 
joylashgan sikllar dеyiladi. Ichma–
ich joylashgan takrorlanuvchi 
jarayonlar algoritmini takrorlash jarayonlarining algoritmidan 
osongina hosil qilish mumkin. 
Masalalarni tahlil etish jarayonida algoritmdagi ba’zi ko’rsatmalar 
takroran bajarilishini kuzatish mumkin. Hayotimizda ham juda ko‘p 
jarayonlar tak- rorlanadi. Masalan, darslarning har hafta 
takrorlanishi, har kuni nonushta qilish yoki maktabga borish va 
hokazo. Ko‘rsatmalari takroriy bajariladigan algoritmlar 
takrorlanuvchi algoritmlar deb ataladi 


Odatda, yig’indi uchun boshlang’ich qiymat (inglizchadan SUMM, 
ya’ni yig’indi ma’noli so’zning bosh harfi) S:= 0 va ko‘paytma uchun 
(inglizchadan PRODUCT, ya’ni ko’paytma ma’noli so‘zning bosh harfi) 
P: = 1 deb olinadi, chunki bu qiym atlar, ya’ni 0 va I l
ar, mos ravishda, 
yig’indi va ko‘paytmaning natijasiga ta’sir etmaydi: 1
- qadamda I := 1 
bo‘lsin: S ; = s + l = 0 + I = l , P : = P * I = l * l = l; 2
- qadam: 1 := I + 1 
= I + 1 = 2: S : = S + I = l + 2 = 3, P: = P * I = 1 * 2 = 2; 3- qadam: l := 
I + 1 = 2 + I = 3: S : = S + I = 3 + 3 = 6, P : = P * l = 2*3 = 6; 4- 
qadam: I := 1 + 1 = 3 + 1 

4: S := S + I = 6 + 4 = 10, P := P * 1 = 6 * 
4 = 24. Algoritmikada, matematikada bunday bo’lishi mumkin emas, 
1 = 1 + 1 deb yozilishi mumkin. Bu yozuvda avval o ‘ng tom
ondagi 
qiymat hisoblanib, so‘ng bu qiymat chap tomondagi nomning qiymati 
deb olinadi. 


MAVZU: 
BIR O’LCHOVLI MASSIVLARNI FUNKSIYA PARAMETRI 
SIFATIDA QO’LLANILISHI
REJA: 
1.MASSIVLAR 
2.BIR O'LCHOVLI MASSIVLAR 
3.BIR O'LCHOVLI MASSIV DASTURI 


Dasturda ikki asosiy tur ma'lumot strukturalari mavjuddir. Birinchisi 
statik, ikkinchisi dinamikdir. Statik deganimizda hotirada egallagan 
joyi o'zgarmas, dastur boshida beriladigan strukturalarni nazarda 
tutamiz. Dinamik ma'lumot tiplari dastur davomida o'z hajmini, 
egallagan hotirasini o'zgartirishi mumkin. Agar struktura bir hil 
kattalikdagi tiplardan tuzilgan bo'lsa, uning nomi massiv (array) 
deyiladi. Massivlar dasturlashda eng ko'p qo'laniladigan ma'lumot 
tiplaridir. Bundan tashqari strukturalar bir necha farqli tipdagi 
o'zgaruvchilardan tashkil topgan bo'lishi mumkin.
Buni biz klas (Pascalda record) deymiz. Masalan bunday strukturamiz 
ichida odam ismi va yoshi bo'lishi mumkin. Bu bo'limda biz 
massivlar bilan yaqindan tanishib o'tamiz. Bu bo'limdagi 
massivlarimiz C uslubidagi, pointerlarga (ko'rsatkichlarga) asoslan 
strukturalardir. Massivlarning boshqa ko'rinishlarini keyingi 
qismlarda o'tamiz. Massivlar hotirada ketma-ket joylashgan, bir 
tipdagi o'zgaruvchilar guruhidir. Alohida bir o'zgaruvchini ko'rsatish 
uchun massiv nomi va kerakli o'zgaruvchi indeksini yozamiz. C++ 
dagi massivlardagi elementlar indeksi har doim noldan boshlanadi. 
Massiv bir o`lchamli deyiladi, agar uning elementiga bir indeks 
orqali murojaat qilish mumkin bo`lsa. 
Bir o`lchamli massivni e`lon qilish quyidagicha bo`ladi: 
[ elementlar_soni ] = { boshlang'ich qiymatlar }; 
Quyida massivlarni e`lon qilishga bir necha misollar keltirilgan: 
1) float a[5]; 
2) int m[6]; 
3) bool b[10]; 
1) a elementlari haqiqiy sonlardan iborat bo`lgan, 5 ta elementdan 
tashkil topgan 
massiv. Indekslari esa 0 dan 4 gacha bo`lgan sonlar 
float a[5]; 
Massiv a[0] a[1] a[2] a[3] a[4] 
elementilari qiymati 4 -7 15 5.5 3 


2) m elementlari butun sonlardan iborat bo`lgan, 6 ta elementdan 
tashkil topgan 
massiv. Indekslari esa 0 dan 5 gacha bo`lgan sonlar. 
int m[6]; 
Massiv m[0] m[1] m[2] m[3] mas2[4] mas2[5] 
elementilari qiymati 2 -17 6 7 13 -3 
3) b elementlari mantiqiy qiymatlardan (true, false ) iborat bo`lgan 
10 ta elementdan tashkil topgan massiv. Indekslari esa 0 dan 9 
gacha bo`lgan sonlar. 
Massiv elementlariga murojaat qilish oddiy o`zgaruvchilarga 
murojaat qilishdan biroz farq qiladi. Massiv elementiga murojaat 
qilish uning indeksi orqali bo`ladi. 
a[1] = 10; a massivining 1 

elementi 10 qiymat o’ zlashtirsin;
cin >> a[2]; a massivining 2 

elementi kirtilsin; 
cout << a[3]; a massivining 3 

elementi ekranga chiqarilsin; 
Massivni e'lon qilishda uning elementlariga boshlang'ich qiymat 
berish mumkin va buning bir nechta usuli mavjud. 


MAVZU: MATRITSALARNI FUNKSIYA PARAMETLARI SIFATIDA 
QO'LLANISHI 
REJA: 
1
.IKKI O'LCHAMLI STATIK MASSIV 
2.MATRITSA HAQIDA 
3.IKKI O'LCHAMLI MASSIV DASTURI 


Agar masalalarda satrlar va ustunlar soni aniq ko‘rsatilmagan bo‘lsa, 
ularni 2 dan 10 
gacha bo‘lgan oraliqda o‘zgartirish tavsiya etiladi. 
Matritsaning boshlang‘ich qiymati 1
- va 2-
indekslari 1 bo‘lgan 
elementida joylashadi. Matritsaga kiritish va chiqarish satrlar 
bo‘yicha amalga oshiriladi. m o‘lchamli kvadrat matritsa 2 o‘lchovli
massiv hisoblanadi. Matritsalarni tashkil eish va ularning 
elementlarini chiqarish. Matritsalarni tashkil etish masalalaridagi 
natijaviy matritsa o‘lchami 10X10 dan oshmaydi.
Ikki o`lchamli statik massivlarni e`lon qilish. 
toifa massiv_nomi [massiv_satrlari_soni][massiv_ustunlar i_soni]; 
Ikki o`lchamli statik massivlarning e`lon qilinishida, bir 
o`lchamlidan farqi, massiv nomidan keyin qirrali qavs ichida ikkita 
qiymat yozilganligidadir. Bulardan birinchisi, satrlar sonini, ikkinchisi 
esa ustunlar sonini bildiradi. Ya'ni ikki o'lchamli massiv elementiga 
ikkita indeks orqali murojaat qilinadi. Ikki o`lchamli massivlar 
matematika kursidan ma`lum bo`lgan matritsalarni eslatadi. 
Ikki o'lchamli massiv e'loniga misol: 
int a[3][3], b[2][4]; 
A matritsa B matritsa 
a00 a01 a02 b00 b01 b02 b03 
a10 a11 a12 b10 b11 b12 b13 
a20 a21 a22 
A matritsa 3 ta satr, 3 ta ustunga ega; 
B matritsa 2 ta satr, 4 ta ustunga ega; 
Ikki o'lchamli massivlarda 1 - indeks satrni, 2 - indeks ustunni
bildiradi. 
Birinchi satrning dastlabki elementi a10 

a biru nol element deb 
o`qiladi. a o`n deyilmaydi. 
m ta satr va n ta ustunga ega bo`lgan massivga (mxn) o`lchamli 
massiv deyiladi. Agar 


m=n (satrlar va ustunlar soni teng) bo'lsa kvadrat massiv 
deyiladi.Massiv bir o`lchamli deyiladi, agar uning elementiga bir 
indeks orqali murojaat qilish mumkin bo`lsa. 
Bir o`lchamli massivni e`lon qilish quyidagicha bo`ladi: 
[ elementlar_soni ] = { boshlang’ich qiymatlar };
Quyida massivlarni e`lon qilishga bir necha misollar keltirilgan: 
1)

Yüklə 124,49 Kb.

Dostları ilə paylaş:
  1   2




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin