Mantiqiy (Boolean) qiymatlar kichik ko’rinsa-da, dasturlashning yuragi hisoblanadi. Har bir shart, har bir tekshiruv aslida ikki qiymatga tayanadi: rost yoki yolg’on. Foydalanuvchi tizimga kirganmi, mahsulot mavjudmi, hisob to’g’rimi — barchasi shu ikki holat orqali hal qilinadi.
bool — ingliz matematigi Jorj Bul sharafiga nomlangan, faqat ikki qiymatga ega tur:
true(rost) vafalse(yolg’on). C++’da bu qiymatlar ichki tarzda1va0sifatida saqlanadi.
true va false
bool turdagi o’zgaruvchi faqat ikki qiymat qabul qiladi:
#include <iostream>
using namespace std;
int main() {
bool faol = true;
bool ochirilgan = false;
cout << faol << endl;
cout << ochirilgan << endl;
return 0;
}
1
0
E’tibor bering: true ekranga 1, false esa 0 bo’lib chiqadi. Bu C++’ning mantiqiy qiymatlarni son sifatida saqlashining natijasidir.
Solishtirish natijasi — bool
Har qanday solishtirish amali natijada bool qaytaradi. Solishtirish operatorlarini jadvalda ko’ramiz:
| Operator | Ma’nosi | Misol | Natija |
|---|---|---|---|
== |
teng | 5 == 5 |
true |
!= |
teng emas | 5 != 3 |
true |
> |
katta | 5 > 8 |
false |
< |
kichik | 5 < 8 |
true |
>= |
katta yoki teng | 5 >= 5 |
true |
<= |
kichik yoki teng | 3 <= 2 |
false |
Amalda:
#include <iostream>
using namespace std;
int main() {
int yosh = 26;
bool voyaga = yosh >= 18;
cout << "Voyaga yetgan: " << voyaga << endl;
cout << (yosh == 30) << endl;
return 0;
}
Voyaga yetgan: 1
0
Chiroyli chiqarish: boolalpha
Agar 1/0 o’rniga true/false so’zlarini ko’rsatmoqchi bo’lsangiz, boolalpha manipulyatoridan foydalaning:
#include <iostream>
using namespace std;
int main() {
bool natija = (10 > 5);
cout << boolalpha; // endi so'z bilan chiqaradi
cout << natija << endl;
return 0;
}
true
boolalpha chiqarish uslubini o’zgartirdi va natija endi o’qiladigan true so’zi bilan chiqdi. Bu ayniqsa nosozliklarni tekshirganda qulay.
Amaliy misol: kirish tekshiruvi
Boolean qiymatlarning kuchi shartlar bilan birlashganda namoyon bo’ladi. Mana kirish tizimi mantiqining soddalashtirilgan ko’rinishi:
#include <iostream>
#include <string>
using namespace std;
int main() {
string login = "farrux";
string parol = "12345";
bool kirish = (login == "farrux" && parol == "12345");
cout << boolalpha << "Kirish muvaffaqiyatli: " << kirish << endl;
return 0;
}
Kirish muvaffaqiyatli: true
Xulosa
Bu bo’limda bool turi, true/false qiymatlari, ularning 1/0 sifatida saqlanishi, solishtirish natijalari va boolalpha bilan chiroyli chiqarishni ko’rib chiqdik. Boolean — bu dasturingizning qaror qabul qilish qobiliyati. Keyingi darsda shart operatori — if...else ga o’tamiz.