Mantıksal operatörler
- C++ kursu
- Başlangıç
- Ders 27/116
- 4 dk
&&, || ve ! ile boolean mantık kurmayı öğrenirsin.
Mantıksal operatörler
Mantıksal operatörler bool değerleri birleştirir: && (ve, logical AND), || (veya, logical OR), ! (değil, logical NOT).
&& her iki taraf da true ise true verir. || en az bir taraf true ise true verir. ! değeri tersine çevirir: !true = false.
Örnek: (age >= 18) && (hasLicense) hem yaş 18+ hem ehliyet varsa true olur. (isWeekend) || (isHoliday) hafta sonu veya tatilse true olur. Bu operatörler karmaşık koşullar kurmayı sağlar.
Kısa devre değerlendirme
C++ mantıksal operatörlerde kısa devre (short-circuit) yapar: sonucu belli olduğunda kalan tarafı değerlendirmez.
&&'de sol taraf false ise sağ tarafa bakılmaz (sonuç zaten false). ||'de sol taraf true ise sağ tarafa bakılmaz (sonuç zaten true).
Bu davranış güvenli koşullar yazmayı sağlar: (ptr != nullptr) && (ptr->value > 0). Eğer ptr null ise sağ taraf hiç değerlendirilmez, böylece çöker önlenir. Kısa devreyi bilmek daha güvenli kod yazmanı sağlar.
Uygulama Mantıksal sonuçları yazdır
main içine bool ready = true; ve bool loaded = false; tanımla. bool canFire = ready && loaded; ve bool either = ready || loaded; ile iki mantıksal işlem yap. Her ikisini de std::cout ile std::endl kullanarak ayrı satırda yazdır.
Başlangıç kodu
#include <iostream>
int main() {
// ready ve loaded tanımla
// Mantıksal işlem yap ve yazdır
return 0;
}Örnek çözüm
#include <iostream>
int main() {
// ready ve loaded tanımla
// Mantıksal işlem yap ve yazdır
bool ready = true;
bool loaded = false;
bool canFire = ready && loaded;
bool either = ready || loaded;
std::cout << canFire << std::endl;
std::cout << either << std::endl;
return 0;
}Beklenen çıktı
0 1
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 true && false ifadesinin sonucu nedir?
- true (1)
- Belirsiz
- Hata
- false (0) Doğru cevap
Açıklama: && her iki taraf true olmalı; bir taraf false ise sonuç false'tür.
2 Mantıksal operatörleri eşleştir
| Kavram | Anlamı |
|---|---|
&& |
Ve |
|| |
Veya |
! |
Değil |
kısa devre |
Erken çıkış |
3 Mantıksal ve
bool canFire = ready ____ loaded;
bool canFire = ready && loaded;
Açıklama: && her iki taraf true ise true verir.