1 – dars. C++ Dasturlash tilining kelib chiqishi xaqida ma’lumot



Yüklə 0,69 Mb.
səhifə20/121
tarix02.01.2022
ölçüsü0,69 Mb.
#37187
1   ...   16   17   18   19   20   21   22   23   ...   121
aaaaKitob majmuasiiii

14 – DARS. MANTIQIY OPERATORLAR

 

Bosqaruv 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. Bilar mantiqiy VA - && (AND), mantiqiy YOKI - || (OR) va mantiqiy INKOR - ! (NOT). Bular bilan misol keltiraylik. 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 ko'radi. 

AND ning (&&) jadvali:

 

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)

 

Bu yerda true ni yeriga 1, false ni qiymati o'rniga 0 ni qo'llashimiz mumkin.


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.



 

OR ning (||) jadvali:

 

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. Inkor operatori ifodaning mantiqiy qiymatini teskarisiga



o'zgartiradi. Yani false ni true deb beradi, true ni esa false deydi.

 

Misol uchun: 



if ( !(counter == finish) )

cout << student_bahosi << end;

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 operator-lar 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;

 

NOT ning jadvali:



 

ifoda !(ifoda)

 

false (0) true (1)



true (1) false (0)


Yüklə 0,69 Mb.

Dostları ilə paylaş:
1   ...   16   17   18   19   20   21   22   23   ...   121




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