4-мavzu. Mantiqiy dasturlash texnologiyasi. Reja


Masala. Berilgan 3 ta a,b,co’zgaruvchilardagi sonli qiymatlarning eng kattasini aniqlovchi  algoritm va dastur tuzilsin



Yüklə 0,69 Mb.
Pdf görüntüsü
səhifə3/10
tarix17.04.2023
ölçüsü0,69 Mb.
#99079
1   2   3   4   5   6   7   8   9   10
4-ma\'ruza

Masala. Berilgan 3 ta a,b,co’zgaruvchilardagi sonli qiymatlarning eng kattasini aniqlovchi 
algoritm va dastur tuzilsin.  
#include  
#include  
using namespace std; 
int main(int argc, char *argv[]) 
{ int a,b,c,max; 
/*Berilgan 3 ta o’zgaruvchiga sonli qiymatlar 
kiritish*/ 
cin>>a>>b>>c; 
/*Dastlabki 2 ta sonning kattasini topib, max 
o’zgaruvchisiga qiymatlash*/
if (a>b) max=a; 
else max=b; 
/*max o’zgaruvchisidagi qiymat bilan 3-sonni 
taqqoslash*/
if (max//Natijani chiqarish; 
cout<<"max="<system("PAUSE"); 
return EXIT_SUCCESS;}


Tarmoqlanuvchi jarayon algoritmi 
Dastur bajarilishini boshqarishning yana bir kuchli mexanzmlaridan biri – takrorlash 
operatorlari hisoblanadi. 
Takrorlash operatori «takrorlash sharti» deb nomlanuvchi ifodaning rost qiymatida dasturning 
ma’lum bir qismidagi operatorlar(takrorlash tanasi)ning ko’p marta takror ravishda bajarilishini 
amalga oshiradi. 
Takrorlash o’zining kirish va chiqish nuqtalariga ega bo’lib, ba’zan chiqish nuqtasi 
bo’lmasligi ham mumkin. Agar chiqish nuqtasi bo’lmasa cheksiz takrorlanish sodir bo’ladi. 
Cheksiz takrorlanish uchun takrorlashni davom ettirish sharti doimo rost bo’ladi. 
Takrorlash shartini tekshirish, takrorlanish tanasidagi operatorlarning bajarilishidan oldin 
tekshirilishi mumkin (for, while takrorlash operatorlarida) yoki takrorlanish tanasining 
operatorlari bir marta bajarilgandan keyin tekshirilishi mumkin (do-while). 
Takrorlanishlarni tashkil etishda takrorlanishlar soni va qadami oldindan ma’lum bo’lgan 
holatlar uchun for operatoridan, boshqa hollarda esa while hamda do-while operatorlaridan 
foydalanish maqsadga muvofiq. 
Takrorlash operatorlari ichma-ich joylashishi ham mumkin. Quyida takrorlash 
operatorlari va ularning qo’llanilishi bilan batafsil tanishamiz. 
for takrorlash operatorining sintaksisi quyidagi ko’rinishga ega:
for (; ;
Bu operator o’z ishini <ifoda1> ifodasining bajarishidan boshlaydi. Keyin takrorlash 
qadamlari boshlanadi. Har bir qadamda <ifoda2> tekshiriladi, agar <ifoda2> ning qiymati 0 
qiymatidan farqli, ya’ni rost bo’lsa, takrorlash tanasi − <operator yoki blok> bajariladi, so’ngra 
<ifoda3> bajariladi. Agar <ifoda2> ning qiymati 0 (yolg’on) bo’lsa, takrorlanish jarayoni 
to’xtaydi va boshqaruv takrorlash operatoridan keyingi operatorga o’tadi. Shuni ta’kidlash 
kerakki, <ifoda2> ifodasi vergul bilan ajratilgan bir nechta ifodalar birlashmasidan iborat 
bo’lishi ham mumkin, bu holda vergul bilan ajratilgan ifodalarning oxirgisi takrorlanish sharti 
hisoblanadi. Takrorlanish tanasi sifatida bitta operator, jumladan bo’sh operator bo’lishi yoki 
operatorlar bloki ham kelishi mumkin. 
Quyida for operatori parametrlarining vazifalari bilan tanishamiz: 
<ifoda1>−takrorlash sanagichiga boshlang’ich qiymat berishga xizmat qiladi va u takrorlash 
jarayoni boshida faqat bir marta hisoblanadi. Ifodada o’zgaruvchi e’loni hambo’lishi mumkin va 
bu o’zgaruvchi takrorlash operatori tanasida amal qiladi va takrorlash operatoridan tashqarida 
«ko’rinmaydi». 
<ifoda2> − takrorlanishning bajarishi yoki bajarilmasligini aniqlab beruvchi mantiqiy ifoda 
(shart), agar shart rost bo’lsa, takrorlanish davom etadi, aks holda to’xtaydi. Agar bu ifodaning 
o’rni bo’sh bo’lsa, shart doimo rost deb hisoblanadi. 
<ifoda3> − odatda takrorlanish sanagichining qiymatini oshirish (kamaytirish) uchun xizmat 
qiladi yoki unda takrorlanish shartiga ta’sir etuvchi boshqa amallar ham bo’lishi mumkin. 
Takrorlash operatorida qavs ichidagi ifodalar bo’lmasligi ham mumkin, lekin 
sintaksis ‘;’ bo’lmasligiga ruxsat bermaydi. Shu sababli sodda ko’rinishdagi takrorlash operatori 
quyidagicha bo’ladi:
for(;;)
Agar takrorlanish jarayonida bir nechta o’zgaruvchilarning qiymati sinxron ravishda 
o’zgarishi kerak bo’lsa, <ifoda1> va <ifoda3> ifodalarida zarur operatorlarni ‘,’ bilan yozish 
orqali bunga erishish mumkin: 
for(int i=1,j=2;i<=15;i++,j=i+1){…} 


Takrorlash operatorining har bir qadamida i va jo’zgaruvchilarningqiymatlari mos 
ravishda o’zgarib boradi. 
for operatorida takrorlanish tanasi bo’lmasligi ham mumkin.
Shuni ham ta'kidlash joizki, C++ tilida for operatorining parametrlari haqiqiy turga 
tegishli bo’lishi, takrorlanishlar qadami ham ixtiyoriy holatda belgilanishi mumkin. Bu 
imkoniyatlar operatorning keng qamrovli ekanligini bildiradi.
Masala. Dastlabki n ta (n>0) natural sonlarning kvadratlari yig’indisini hisoblovchi algoritm va 
dastur tuzilsin.

Yüklə 0,69 Mb.

Dostları ilə paylaş:
1   2   3   4   5   6   7   8   9   10




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