(C++) İç içe koşullu ifade. Zor şartlar


İç içe koşullu ifade
"if" bloklarında ve "else" diğer koşullu ifadeler dahil olmak üzere diğer tüm ifadeleri içerebilir. Bu, iç iç içe koşullu ifadeler ile sonuçlanır; else deyimi en yakın önceki if ifadesini ifade eder.
 
Örnek
eğer ( A > 10 ) eğer ( A > 100 ) cout Programın anlaşılmasını kolaylaştırmak için tüm "if" blokları ve "else" (sınırlayan parantezlerle birlikte) 2-3 karakter sağa kaydırılır - buna merdiven gösterimi
denir.
"merdiven" herhangi bir programcı için iyi bir biçimdir!

Karmaşık durum
Önceki problem, karmaşık koşullar kullanılarak daha kısa bir şekilde çözülebilir. 

Karmaşık bir durumun ne olduğunu anlayalım.

Basit koşullar bir ilişkiden oluşur (daha büyük, daha küçük, vb.). Ancak bazen basit koşulları daha karmaşık olanlarla birleştirmek gerekir. Örneğin dışarısı soğuk ve yağmur yağıyor. İki basit koşul (dışarısı soğuk) ve (dışarıda yağmur yağıyor) burada VE ile birbirine bağlanmıştır.
 
Karmaşık koşul - mantıksal işlemlerle birleştirilen iki veya daha fazla basit koşuldan  oluşur .
 
C++'da mantıksal bağlantılar
&& - mantıksal çarpma (AND);
||  - mantıksal toplama (VEYA);
!    - mantıksal olumsuzlama (DEĞİL).

Mantıksal çarpma (VE işlemi)  iki koşulun aynı anda karşılanmasını gerektirir:
koşul_1 && koşul_2  

yalnızca her iki basit koşul da aynı anda doğruysa doğru olarak değerlendirilir.
Ayrıca C programlama dilinde condition_1 false ise condition_2 kontrol edilmeyecektir.

Mantıksal çarpma (VEYA işlemi) aşağıdaki koşullardan en az birini gerektirir:
koşul_1 || koşul_2
yalnızca her iki basit koşul da aynı anda yanlışsa yanlış olarak değerlendirilir.
Ayrıca, C programlama dilinde koşul_1 doğruysa, koşul_2 kontrol edilmeyecektir.

Mantıksal çarpma (işlem DEĞİL)
 !condition_1 
koşul_1  doğru ve tersi.
Örneğin, aşağıdaki iki koşul eşdeğerdir:   A>B   ve  !(A<=B).
 
Mantıksal işlemlerin ve ilişkilerin yürütülme önceliği
1. Parantez içindeki işlemler.
2. İşlem DEĞİL.
3. Mantıksal ilişkiler >, <, >=, <=, ==, !=.
4. Operasyon I.
5. VEYA işlemi.
Parantezler, işlemlerin sırasını değiştirmek için kullanılır.

 
Boole değişkenleri
Birçok programlama dilinde, boolean değerleri ("true"/"false") depolayan değişkenleri kullanmak mümkündür. C++'da bu tür değişkenler true (true) veya false (false) değerlerini alabilir. Örneğin, bir program parçacığı:  bool a, b; bir = doğru; b=yanlış; cout 1'i görüntüler (bu true'dir, false , 0'dır).

Boole değişkenleri, bool türündedir ve adını mantık cebirinin yaratıcısı İngiliz matematikçi George Boole'den alır.