logo

Tarmoqlanuvchi jarayonlarni dasturlash

Yuklangan vaqt:

08.08.2023

Ko'chirishlar soni:

0

Hajmi:

91.3544921875 KB
Tarmoqlanuvchi jarayonlarni dasturlash
Reja:
1. Tarmoqlanuvchi jarayonlarni dasturlash. 
2. Qisqa, to‘liq va so‘roq shartli operatorlari va ularning ishlash 
mexanizmlari asosida dastur yaratish.  Programmalash   t ili   operatorlari   yech i layotgan   masala   algor i tmini
am a lga   oshirish   uchun   ishlatiladi .   Operatorlar   chiziqli   va   boshqaruv
operatorlariga   bo’linad i .   Aks a riyat   holatlarda   opera t orlar   « nuqta - vergul »
(‘;’)   belg i si   bilan   tugallanadi   va   u   kompilyator   tomonidan   aloh i da   operator
deb   qabul   qilinadi   (for   operat o rining   qavs   ichida   t urgan   ifodal a ri   bundan
mustasno ).   Bunday   operator   ifo d a   operato r i   dey i ladi .   Qiym a t   berish
amallari   guruhi ,   xususan ,   qiymat   berish   operat o rlari   ifoda   operatorlari
hisoblanadi :
I++;  
--j;  
k+= I ;
Programma   tuzish   amaliyotida   bo’sh   ope r a t or   -   ‘;’   ishlatilad i .  Garchi
bu   operator   hech   nima   bajarmasa   ham ,   hiso b lash   ifodalar i ni   til
qurilma l ariga   mos   kelishini   ta’m i nlaydi .   Ayr i m   hollarda   yuza g a   ke lgan
« bo sh i   berk »   h o latlar d an   chiqib   ketish   imkonini   beradi .
O’zgaruvchilarni   e’lon   qilish   ham   operator   hisoblanadi   va   ular g a
e’lon   operatori   deyiladi .
Shart   operatori.   Oldingi   mavzularda   misol   tariqasida   kel t irilgan
programmal a rda   amallar yozilish tartibida ket m a - ket va  faqat   b i r   marta
bajariladigan   holatlar ,   ya’ni   chiziqli   algoritmlar   kelt i rilgan .  Amalda   esa
kamdan - kam   masalal a r   shu   tari q a   ye ch il i shi   mumkin .   Aksariyat
ma s alalar   yu za g a   keladigan   turli   hola t larga   bog’l i q   ravishda   mos
qa r or   qabul   q ilishni   ( yechimni )   talab   etad i .   C++   tili   progr a m maning
alohida   bo’laklarining   bajarilish   t artibini   boshqa r ishga   i m kon   beru v chi
qurilmalarning   yetarlicha   katta   majmua s iga   ega .   Masala n ,   progr a m m a
bajarilishining   birorta   qadami d a   qandaydir   shartni   tekshirish   natijasiga
k o’ra   boshqaruvni   progr a m maning   u   yoki   bu   bo’lagiga   uzatish   mumkin ( tarmoqlanuvchi   algoritm ).   Tarmoqlanishni   a m alga   o sh irish   uchun   sh a r t li
ope r atordan   foydalanila d i .
if   operato r i.  if operat o ri   qandaydir   shartni   rostli k ka   teksh i rish
natijasiga   ko’ra   programmada   tarmoqlani sh ni   a m alga   oshiradi :
if (< shar t > )< oper a t o r >;
Bu   yerda   < shart >   har   qa n day   ifoda   bo’lishi   mumki n ,   odatda   u
taqqos l a sh   amali   bo’ladi .
Ag a r   shart   0   qiymati d an   farqli   yoki   rost   (true)   bo’lsa ,
< operator >   bajariladi ,   aks   holda ,   ya’ni   shart   0   yoki   yolg’on   (false)
bo’lsa ,   hyech   qanday   amal   b ajarilmaydi   va   boshqaruv   if   o pe ratori d an
keyingi   o peratorga   o’tadi   ( agar   u   mavjud   bo’l s a ).   Ushbu   holat   4.1-
rasmda   ko’rsatilgan .
1 - rasm . if()   shart   opera t or i ning   bl o k   sxemasi
C++   t ilini n g   qurilmalari   operatorlar n i   blok   k o’rin i shida   tashkil
qi l ishga   imkon   beradi .   Blok   -   ‘{‘   va   ‘ } ’   be l gi   oralig’iga   olin g an
o peratorlar   ketma - ketligi   bo’lib ,   u   ko m pilyator   tomonid a n   yaxlit   biroperator ha (true)
shart-ifoda
Yo ’q (false) operator   de b   qabul   qilinad i .   Blok   ich i da   e’lon   operatorlari   ham
bo’l i shi   mumkin   va   ularda   e’lon   qilingan   o’zgaruvchilar   faqat   sh u
blok   ichida   ko’rinadi   ( amal   qiladi ),   blo k dan   tashqarida   k o’ rinmayd i .
Blokdan   keyin   ‘;’   be l gisi   qo’yilma s ligi   mumkin ,   lekin   blok   ich i dagi
har   bir   ifoda   ‘;’   belgisi   bilan   yakunlanishi   shart .
Quyida   keltirilgan   programmada   if   operatoridan   foyd a lan i sh
ko’rsatilgan .
#in c lude   <io s tre a m.h>   int   m ain ( )
{
int   b ;   cin > >b;   if   ( b >0)
{ //   b > 0   shart   baj a ril g an   h o lat   ...
cou t <<“b   -   mu s bat   son ” ;   ...
}
if   ( b <0)
cou t <<“b   -   ma n fiy   son ” ;   //   b <0   shart   baj a ril g an   h o lat   ret u rn   0;
}
Programma   baj a rili sh i   jarayonida   butun   tu r dagi   b   o’z g aruvchi   e’lon
qilinadi   va   un i ng   qiymati   klaviaturadan   o’qiladi .   Keyin   b   qiymatini   0
sonidan   katt a ligi   te kshiriladi ,   a g ar   shart   bajarilsa  (true)   ,   u   holda   ‘{‘   va   ‘ } ’
belg i lar   ichidagi   operatorlar   bajariladi   va   ekranga   “b   -   musbat   son ”   xabari
chiqadi .   Ag a r   sh art   bajarilmasa ,   bu   operatorlar   cheklab   o’tilad i .   N a vbatdagi
sha r t   operatori   b   o’z g aru v chi   qiymati   manfiyli k ka   tekshiradi ,   a gar   shart
ba j arilsa ,   yago n a   c o ut   ko’rsatmasi   bajariladi   va   ekranga   “b   -   man f iy   son ”
xabari   ch i qadi . if   -   else   oper a t o r i.  Shart   operatorini n g   if - else   ko’rinishi   quyidagicha :
if (< shart - i f o da >) < ope r ato r
1 >; else < o per a tor
2 > ;
Bu   yerda   < shart - ifoda >   0   qiymatidan   fa r qli   yoki   true   bo’lsa ,   < ope r a -
tor
1 >,   aks   holda   < operator
2 >   bajariladi .   if-else   shart   operatori   maz - muniga
ko’ra   algoritmning   tarmoqlanuvchi   blokini   ifodalaydi :   < shart - ifoda >   -
sh a rt   bloki   ( ro m b )   va   < operator
1 >   blokning   « ha »   shox i ga ,   < operator
2 >
esa   blo k ning   « yo’q »   sh oxiga   mos   keluvchi   amallar   bloklari   deb   qarash
mumkin  (2- ra s m ).  
2- rasm . if(); else  sh art   operat o ri n ing   bl o k   sxemasi
Misol   tariqasida   diskriminantni   hisoblash   usuli   yordamida
ax 2
+bx+c=0   ko’rinishidagi   kvadrat   tenglama   ildizlarini   topish
masalasi n i   ko’raylik :
#in c lude   <io s tre a m.h>  
#in c lude   <ma t h.h>
int   m ain ( ) operator
1   operator
2  shart-ifodaha (true) yo’q (false) {
flo a t   a, b ,c;  
flo a t   D, x 1,x 2 ;
cou t <<” a x^2 + bx+ c =0   t e ng l ama   i ldi z ini   t op i sh.   ” ;  
cou t <<” \ n   a   -   koe f fis i yen t ini   k iri t in g :   ”;   cin > >a;
cou t <<” \ n   b   -   koe f fis i yen t ini   k iri t in g :   ”;   cin > >b;
cou t <<” \ n   c   -   koe f fis i yen t ini   k iri t in g :   ”;   cin > >c;
D=b * b-4 * a*c;   if( D <0)
{
co u t   <<   “ Ten g lama   ha q iqiy   ild i zga   ega   e mas ! ”;  
ret u rn   0;
}
if   ( D ==0)
{
co u t   <<   “ Ten g lama   ya g ona   i ldi z ga   e ga:   ” ;   x1= - b/( 2 *a);
cou t <<” \ nx=   “ <<x 1 ;  
ret u rn   0;
}  
else
{
co u t   <<   “ Ten g lama   ik k ita   i ldi z ga   e ga:   ” ;  
x1= ( -b+ s qrt ( D)) / (2* a );
x2= ( -b- s qrt ( D)) / (2* a );
cou t <<” \ nx1=   “<< x 1;  
cou t <<” \ nx2=   “<< x 2;
}
ret u rn   0;  
} Programma   bajari l ganda ,   birinchi   navbatda   tenglama   koeffi - siyent l ari
-   a,   b,   c   o’ z garuvchilar   qiyma t lari   kiritiladi ,   key i n   diskriminant   -   D
o’zgaruvchi   qiymati   hisoblanadi .   Keyin   D   qiym a ti - ning   manfiy   ekanligi
tekshir i la d i .   Ag a r   sh a rt   o’ r inli   bo’lsa ,   ya x lit   operator   sifatida   keluvchi   ‘{‘
va   ‘}’   belgilari   orasid a gi   operator - lar   bajariladi   va   ekranga   “ Tenglama
haqiqiy   ildizlarga   ega   emas ”  xabari   chiqadi   va   programma   o’z   ishini
tugatadi   (“return   0;”   operatorini   bajarish   orqali ).   Diskriminant   noldan
kichik   bo’lmasa ,  navbatdagi   sh a rt   operatori   u ni   nolga   tengligini   tekshiradi .
A g ar   shart   o’rinli   bo’ls a ,   keyingi   qatorlardagi   operatorlar   bloki
bajariladi   -   ekranga   “ Tengla m a   yagona   ildizga   e g a :”   xabari ,   ha m da   x 1
o’zgaruvchi   qiymati   chop   e t iladi   va   programma   shu   yerda   o’z   ish i ni
tugatadi ,   aks   holda ,   ya ’ni   D   qiymati   noldan   kat t a   holati   uchun   else   kalit
so’zidan   ke yingi   operatorlar   bloki   bajariladi   va   ekranga   “ Ten g lama
ikkita   ild i zga   ega :   “   xabari ,   hamda   x 1   va   x 2   o’zgar u vchilar   qiymatlari   chop
etiladi .   Shu   bilan   sha r t   operatoridan   chiqiladi   va   asosiy   funksiyaning   return
ko’rsatmasini   bajarish   orqali   programma   o’z   i sh ini   tugatad i .
O’z   navbatida   < operator
1 >   va   < operator
2 >   ham   shartli   operator
bo’li sh i   mumkin .   If o dadagi   har   bir   else   k a lit   s o’ zi ,   oldindagi   eng   yaqin   if
kalit   s o’ z i g a   tegishli   hisoblanadi   ( xud d i   ochiluvchi   va   yopilu v chi
qavslardek ).   Bu n i   in o batga   o l maslik   mazmunan   x a tolik - larga   ol i b   keli sh i
mum k in .
Masalan :
if   ( x ==1)
if   ( y ==1 ) cou t <<” x =1   v a   y= 1 ”;   else   cou t <<” x <>1 ” ; Bu   misol d a   “x<>1”   xabari   x   qiymati   1   va   y   qiymati   1   bo’lmag a n   holda
ham   chop   etiladi .   Quyidagi   variantda   ushbu   mazmunan   xatolik   bartaraf
etilgan :
if( x ==1)   {
if( y ==1 ) cou t <<” x =1   va   y= 1 ”;   }
else   cou t <<” x <>1 ” ;
Ikkinchi   misol   tariqas i da   uchta   butun   sonning   maksimal
qiymatini   topadigan   programma   bo’lagini   keltirishimiz   mu mk in :
...
int   x ,y, z ,ma x ;   cin   > >x> > y>> z ;   if   ( x >y)
if   ( y <z)   m ax= z ;   else   max = y;
else
if   ( x <z)   m ax= z ;   else   max = x;
...
Shart   operatorida   e’lon   qilish   operatorlarini   ishlatish   man   etiladi ,
lekin   unda g i   bloklarda   o’zga r uvchilarni   e’lon   qilish   mumkin   va   bu
o’zgaruvchilar   faqat   blok   i ch ida   amal   qiladi .   Quyidagi   misolda   bu   holat
bilan   bog’liq   xatolik   ko’rsatilgan :
if( j >0) { int   i ;i= 2 *j;}
else   i=- j ;//x a to, ch unki   i   bl o kdan   tash q ari d a   ko’ r inm a ydi
Masala .   Ber i lgan   to’rt   xon a li   ishorasiz   sonning   boshidagi   ikki t a
raq a mining   yig’indisi   qolgan   raqamlar   y ig’indisi g a   teng   yoki   yo’qligi
aniqlansin   ( raqamlar   yig’indisi   deganda   u lar g a   mos   son   qiymatlarining
yig’i n disi   tushunilad i ).   S o nning   raqamlarini   ajratib   o l ish   uchun
butun   s onlar   arif me tika s i   amalla r idan   foydalanila d i : #in c lude   <io s tre a m.h>   int   m ain ( )
{
uns i gned   int   n ,a3 , a2 , a1, a 0;   //   n=a
3 a
2 a
1 a
0   k o’ri n ish i da   cou t <<” \ nn   -
q iym a ti n i   ki r iti n g:   ”;
cin > >n;
if( n <10 0 0   ||   n >99 9 9)   {
cou t <<” K iri t ilg a n   son   4   x o nali   ema s !”;   ret u rn   1;
}   a3= n /10 0 0;
a2= n %10 0 0/1 0 0;   a1= n %10 0 /10;   a0= n %10;
if( a 3+a 2 ==a 1 +a0 ) cou t <<” a 3+ a 2   =   a 1 +a0 ” ;   else
cou t <<” a 3+a 2 <>a 1 +a 0 ”;
ret u rn   0;   }
Programma   ishorasiz   butun   son   kiritishni   ta k lif   qiladi .   A gar   kiritilgan
son   4   xona l i   bo’lmasa   (n<1000   yoki   n>999 9 ),   bu   haqda   x ab a r   beriladi   va
programma   o’z   ishini   tugatadi .   Aks   holda   n   sonining   raqamlari   ajrat i b
olinadi ,   hamda   bosh i dagi   ikkita   raqamning   yig’indisi   -   (a3+a2)   qolgan
ikkita   raqamlar   yig’indisi   -   (a1+a0)   bilan   solishtiriladi   va   ularning   teng
yoki   yo’ql i gi   qarab   mos   javob   chop   qilinadi .
Shart   operatorini   ichma-ich   qo’llash.   Hayotda   bo'lgani   kabi,
kompyuter   dasturlarida   ham   ba'zan   ikkitadan   ortiq   variantni   tanlashingiz
kerak.   Bunday   ehtiyojlarni   qondirish   uchun   C++da   if   else   kengaytirilishi
mumkin.   Yuqorida   aytib   o'tilganidek,   boshqasidan   keyin   bitta   bayonot
bo'lishi   kerak,   bu   ham   bayonot   bloki   bo'lishi   mumkin.   Agar   else   o'zi   bitta
bayonot bo'lsa, u yana quyidagilarni bajarishi mumkin:
if (ch == ' А ') 
a++;  else 
if (ch == ' В ') 
b++; 
else 
s++; 
Agar ch o’zgaruvchisi 'A' ga teng bo'lmasa, dastur boshqa satrga o’tadi.
U   yerda   ikkinchi   if-else   buyrug'i   ushbu   alternativani   yana   ikkita   variantga
ajratadi.   C++ning   erkin   formatlash   xususiyati   ushbu   elementlarni   o'qilishi
mumkin bo'lgan tartibda joylashtirishga imkon beradi:
if (ch == 'A') 
a++; 
else if (ch == ' В ') 
b++; 
else 
s++; 
Bu   butunlay   yangi   boshqaruv   tuzilmasiga   o'xshaydi   –   if   else   if   else.
Ammo bu aslida bitta if else operatori boshqasining tarkibiga joylashtirilgan.
Qayta   ko'rib   chiqilgan   format   yanada   aniqroq   ko'rinadi   va   hatto   barcha
muqobil variantlarni baholashga imkon beradi. Ushbu qurilish hali ham bitta
operator sifatida ko'rib chiqilmoqda.
?:   sh art   amali   (Ternar   operatori).   Ag a r   tekshirilayotgan   shart
nisbatan   sodda   b o’l s a ,   shart   amalining   «?:»   k o’rinishini   ishla t ish
mumkin :
< shart   i fo da > ? < if od a
1 > : < if o da
2 >; Shart   a ma l i   if   shart   o peratori g a   o’ xshash   holda   ishlayd i :   a gar   < shart
ifoda >   0   qiymatidan   farqli   yoki   true   bo’lsa ,   < ifoda
1 > ,   aks   holda
< ifoda
2 >   bajari l adi .   Odat d a   ifodalar   qiymatlari   birorta   o’zgaruvch i ga
o’zlashtir i ladi .
Misol   tariqasida   ikk i ta   butun   son   maksimumini   top i sh   masalasi n i
ko’raylik . 
#in c lude   <io s tre a m.h>   int   m ain ( )
{
int   a ,b, c ;
cou t <<”a   va   b   son l ar   m a ksi m umi n i top i sh. ” ;
cou t <<” \ n a   -   q iym a ti n i   ki r iti n g:”;  
cin > >a;
cou t <<” \ n b   -   q iym a ti n i   ki r iti n g:”;
cin > >b;
s=a > b?a : b;
cou t <<” \ nSo n lar   m aks i mu m i:   ” < <c;   ret u rn   0;
}
Programmadagi   shart   operatori   qiymat   ber i sh   operatorining   tarkibiga
kirgan   bo’lib ,   a   o’zgaruvchining   qiymati   b   o’zgaruvchining   qiymatidan
k attali g i   tekshirilad i .   Agar   shart   rost   bo’lsa ,   s   o’zgaruvch i siga   a
o’zgaruvchi   qiymatini ,   a k s   holda   b   o’zgaruvchining   qiymatini
o’zlashtiradi   va   s   o’zgaruvchisining   qiyma t i   ch o p   etiladi .
?:   a malin i ng   qiymat   qayta r ish   xossasidan   foydal a ngan   holda ,   uni
bevosi t a   cout   ko’r s atmasiga   yoz i sh   orqali   ham   qo’yilgan   mas a lani   yechish
mumkin : #in c lude   <io s tre a m.h>   int   m ain ( )
{
int   a ,b;
cou t <<”a   va   b   son l ar   m a ksi m umi n i   t o pis h .”;   cou t <<” \ na-   q iym a tini
ki r iti n g:   ”;   cin > >a;
cou t <<” \ nb-   q iym a tini   ki r iti n g:   ”;   cin > >b;
cou t <<” \ nSo n lar   m aks i mu m i:   “ < <(a > b)? a :b;   ret u rn   0;
}

Tarmoqlanuvchi jarayonlarni dasturlash Reja: 1. Tarmoqlanuvchi jarayonlarni dasturlash. 2. Qisqa, to‘liq va so‘roq shartli operatorlari va ularning ishlash mexanizmlari asosida dastur yaratish.

Programmalash t ili operatorlari yech i layotgan masala algor i tmini am a lga oshirish uchun ishlatiladi . Operatorlar chiziqli va boshqaruv operatorlariga bo’linad i . Aks a riyat holatlarda opera t orlar « nuqta - vergul » (‘;’) belg i si bilan tugallanadi va u kompilyator tomonidan aloh i da operator deb qabul qilinadi (for operat o rining qavs ichida t urgan ifodal a ri bundan mustasno ). Bunday operator ifo d a operato r i dey i ladi . Qiym a t berish amallari guruhi , xususan , qiymat berish operat o rlari ifoda operatorlari hisoblanadi : I++; --j; k+= I ; Programma tuzish amaliyotida bo’sh ope r a t or - ‘;’ ishlatilad i . Garchi bu operator hech nima bajarmasa ham , hiso b lash ifodalar i ni til qurilma l ariga mos kelishini ta’m i nlaydi . Ayr i m hollarda yuza g a ke lgan « bo sh i berk » h o latlar d an chiqib ketish imkonini beradi . O’zgaruvchilarni e’lon qilish ham operator hisoblanadi va ular g a e’lon operatori deyiladi . Shart operatori. Oldingi mavzularda misol tariqasida kel t irilgan programmal a rda amallar yozilish tartibida ket m a - ket va faqat b i r marta bajariladigan holatlar , ya’ni chiziqli algoritmlar kelt i rilgan . Amalda esa kamdan - kam masalal a r shu tari q a ye ch il i shi mumkin . Aksariyat ma s alalar yu za g a keladigan turli hola t larga bog’l i q ravishda mos qa r or qabul q ilishni ( yechimni ) talab etad i . C++ tili progr a m maning alohida bo’laklarining bajarilish t artibini boshqa r ishga i m kon beru v chi qurilmalarning yetarlicha katta majmua s iga ega . Masala n , progr a m m a bajarilishining birorta qadami d a qandaydir shartni tekshirish natijasiga k o’ra boshqaruvni progr a m maning u yoki bu bo’lagiga uzatish mumkin

( tarmoqlanuvchi algoritm ). Tarmoqlanishni a m alga o sh irish uchun sh a r t li ope r atordan foydalanila d i . if operato r i. if operat o ri qandaydir shartni rostli k ka teksh i rish natijasiga ko’ra programmada tarmoqlani sh ni a m alga oshiradi : if (< shar t > )< oper a t o r >; Bu yerda < shart > har qa n day ifoda bo’lishi mumki n , odatda u taqqos l a sh amali bo’ladi . Ag a r shart 0 qiymati d an farqli yoki rost (true) bo’lsa , < operator > bajariladi , aks holda , ya’ni shart 0 yoki yolg’on (false) bo’lsa , hyech qanday amal b ajarilmaydi va boshqaruv if o pe ratori d an keyingi o peratorga o’tadi ( agar u mavjud bo’l s a ). Ushbu holat 4.1- rasmda ko’rsatilgan . 1 - rasm . if() shart opera t or i ning bl o k sxemasi C++ t ilini n g qurilmalari operatorlar n i blok k o’rin i shida tashkil qi l ishga imkon beradi . Blok - ‘{‘ va ‘ } ’ be l gi oralig’iga olin g an o peratorlar ketma - ketligi bo’lib , u ko m pilyator tomonid a n yaxlit biroperator ha (true) shart-ifoda Yo ’q (false)

operator de b qabul qilinad i . Blok ich i da e’lon operatorlari ham bo’l i shi mumkin va ularda e’lon qilingan o’zgaruvchilar faqat sh u blok ichida ko’rinadi ( amal qiladi ), blo k dan tashqarida k o’ rinmayd i . Blokdan keyin ‘;’ be l gisi qo’yilma s ligi mumkin , lekin blok ich i dagi har bir ifoda ‘;’ belgisi bilan yakunlanishi shart . Quyida keltirilgan programmada if operatoridan foyd a lan i sh ko’rsatilgan . #in c lude <io s tre a m.h> int m ain ( ) { int b ; cin > >b; if ( b >0) { // b > 0 shart baj a ril g an h o lat ... cou t <<“b - mu s bat son ” ; ... } if ( b <0) cou t <<“b - ma n fiy son ” ; // b <0 shart baj a ril g an h o lat ret u rn 0; } Programma baj a rili sh i jarayonida butun tu r dagi b o’z g aruvchi e’lon qilinadi va un i ng qiymati klaviaturadan o’qiladi . Keyin b qiymatini 0 sonidan katt a ligi te kshiriladi , a g ar shart bajarilsa (true) , u holda ‘{‘ va ‘ } ’ belg i lar ichidagi operatorlar bajariladi va ekranga “b - musbat son ” xabari chiqadi . Ag a r sh art bajarilmasa , bu operatorlar cheklab o’tilad i . N a vbatdagi sha r t operatori b o’z g aru v chi qiymati manfiyli k ka tekshiradi , a gar shart ba j arilsa , yago n a c o ut ko’rsatmasi bajariladi va ekranga “b - man f iy son ” xabari ch i qadi .

if - else oper a t o r i. Shart operatorini n g if - else ko’rinishi quyidagicha : if (< shart - i f o da >) < ope r ato r 1 >; else < o per a tor 2 > ; Bu yerda < shart - ifoda > 0 qiymatidan fa r qli yoki true bo’lsa , < ope r a - tor 1 >, aks holda < operator 2 > bajariladi . if-else shart operatori maz - muniga ko’ra algoritmning tarmoqlanuvchi blokini ifodalaydi : < shart - ifoda > - sh a rt bloki ( ro m b ) va < operator 1 > blokning « ha » shox i ga , < operator 2 > esa blo k ning « yo’q » sh oxiga mos keluvchi amallar bloklari deb qarash mumkin (2- ra s m ). 2- rasm . if(); else sh art operat o ri n ing bl o k sxemasi Misol tariqasida diskriminantni hisoblash usuli yordamida ax 2 +bx+c=0 ko’rinishidagi kvadrat tenglama ildizlarini topish masalasi n i ko’raylik : #in c lude <io s tre a m.h> #in c lude <ma t h.h> int m ain ( ) operator 1 operator 2 shart-ifodaha (true) yo’q (false)