Toshkent davlat agrar universiteti s. M. Aminov, S. I. Muxamadiyev, S. Sh. Rasulov axborot kommunikatsion


Axborot kommunikatsion texnologiyalar.S.Aminov



Yüklə 15,83 Mb.
Pdf görüntüsü
səhifə46/74
tarix14.10.2023
ölçüsü15,83 Mb.
#155463
1   ...   42   43   44   45   46   47   48   49   ...   74
kommunikacion tehnologijalar 2020 j

Axborot kommunikatsion texnologiyalar.S.Aminov 
79 
return (0); } 
Dasturdagi o`zgaruvchilar e`lon qilindi va boshqang`ich qiymatlarni olishdi. 
cout << k++ << endl;
ifodasida ekranga oldin 
k
ning boshlang`ich qiymati 
chiqarildi, keyin esa uning qiymati 1 da oshirildi. 
l += 4;
da l ning qiymatiga 4 soni 
qo`shildi va yangi qiymat l da saqlandi. cout 
<< --m <<
endl;
ifodasida m ning 
qiymati oldin predekrement qilindi,va undan so`ng ekranga chiqarildi. m = k + (++l); 
da oldin l ning qiymati birga ishirildi va l ning yangi qiymati k ga qo`shildi. m esa bu 
yangi qiymatni oldi. Oshirish va kamaytirish operatorlari va ularning argumentlari 
orasida bo`shliq qoldirilmasligi kerak. Bu operatorlar sodda ko`rinishdagi 
o`zgaruvchi-larga nisbatan qo`llanilishi mumkin xalos. Masalan,
++(f * 5); 
ko`rinish noto`g`ridir. 
Mantiqiy operatorlar. 
Boshqaruv strukturalarida shart qismi bor dedik. Shu 
paytgacha ishlatgan shartlarimiz ancha sodda edi. Agar bir necha shartni 
tekshirmoqchi bo`lganimizda ayri-ayri shart qismlarini yozardik. Lekin C++ da bir 
necha sodda shartni birlashtirib, bitta murakkab shart ifodasini tuzishga yordam 
beradigan mantiqiy operatorlar mavjuddir. Bular mantiqiy VA – [&&] (AND), 
mantiqiy YOKI – [||] (OR) va mantiqiy INKOR – [!] (NOT). Masalan, faraz qilaylik, 
bir amalni bajarishdan oldin, ikkala shartimiz (ikkitadan ko`p ham bo`lishi mumkin) 
true (haqiqat) bo`lsin.
if (i < 10 && l >= 20){...} 
Bu yerda {} qavslardagi ifodalar bloki faqat i 10 dan kichkina va l 20 dan katta 
yoki teng bo`lgandagina ijro qilinadi.
9.1 jadval 
ifoda1 
ifoda2
ifoda1 && ifoda2 
false (0)
false (0)
false (0) 
true (1)
false (0)
false (0) 
false (0) 
true (1) 
false (0) 
true (1)
true (1)
true (1) 
Boshqa misol: 
while (g<10 || f<4){...} 
Bizda ikki o`zgaruvchi bor (g va f). 
Birnchisi
10 dan kichkina yoki ikkinchisi 
4 dan kichkina bo`lganda while ning tanasi takrorlanaveradi. Yani shart bajarilishi 
uchun eng kamida bitta true bo`lishi kerak, AND da (&&) esa hamma oddiy 
shartklar true bo`lishi kerak. 
9.2- jadval
. (||). 
ifoda1
ifoda2
ifoda1 || ifoda2 
false (0) 
false (0) 
false (0) 
true (1)
false (0)
true (1) 
false (0) 
true (1) 
true (1) 
true (1)
true (1)
true (1) 
[&&] va [||] operatorlari ikkita argument olishadi. Bulardan farqli o`laroq, [!] 
(mantiqiy inkor) operatori bitta argumet oladi, va bu argumentidan oldin qo`yiladi. 


80 
Inkor operatori ifodaning mantiqiy qiymatini teskarisiga o`zgartiradi. Yani false ni 
true deb beradi, true ni esa false deydi. Masalan, 
if ( !(counter == finish) ) 
cout << student_bahosi << endl; 
Agar counter o`zgaruvchimiz finish ga teng bo`lsa, true bo`ladi, bu true qiymat 
esa [!] yordamida false ga aylanadi. false qiymatni olgan if esa ifodasini bajarmaydi. 
Demak ifoda bajarilishi uchun bizga counter finish ga teng bo`lmagan holati kerak. 
Bu yerda [!] ga tegishli ifoda () qavslar ichida bo`lishi kerak. Chunki mantiqiy 
operatorlar tenglilik operatorlaridan kuchliroqdir. Ko`p hollarda [!] operatori o`rniga 
mos keladigan mantiqiy tenglilik yoki solishtirish operatorlarini ishlatsa bo`ladi, 
masalan, yuqoridagi misol quyidagi ko`rinishda bo`ladi: 
if (counter != finish) 
cout << student_bahosi << endl; 
9.3 

Yüklə 15,83 Mb.

Dostları ilə paylaş:
1   ...   42   43   44   45   46   47   48   49   ...   74




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