İlişkisel ve Mantıksal Operatörler ve Şartlı Deyimler

Bir program hesap, bildirim, komut ve karar yapıları kullanılarak geliştirilir. Karar yapıları bir programın akış yönüne karar vermek için kullanılır. Bu bölümde if, if -else, if -else if ve switch kontrol yapıları açıklanmıştır. Ama daha öncesinde kontrol yapılarını oluşturabilmek için gerekli ilişkisel ve mantıksal operatörler tanıtılmıştır.

İlişkisel ifadeler bir koşulun doğrulunu kontrol etmek için kullanılır. Bir ilişkisel ifade, bir ilişkisel operatör ve iki işlenen kullanılarak oluşturulur. Bu operatörler büyüktür (>), büyük eşittir (>=), küçüktür (<) ve küçük eşittir (<=) olmak üzere 4 adettir.

İlişkisel operatörlere ek olarak eşittir (==) ve eşit değildir (!=) operatörleri iki değerin birbirine eşit olup olmama durumlarını test etmek için kullanılır. İlişkisel operatörler ile basit koşullar oluşturulabilir. Daha karmaşık koşullar ise ancak mantıksal operatörlerin yardımı ile elde edilir. C++ programlama dilinde kullanabileceğimiz 3 farklı mantıksal operatör vardır. Bunlar VE (&&), VEYA (||) ve DEĞİL (!) operatörleridir.

Mantıksal operatörlere ait doğruluk tablolarına bölüm içerisinde yer verilmiştir. İki koşul kullanarak bir mantıksal ifade oluşturduğumuzda eğer her iki koşul da doğru ise Mantıksal VE operatörü doğru sonuç verir; ama koşullardan en az biri yanlış ise yanlış sonuç üretilir . Öte yandan M antıksal VEYA operatörü her iki koşulun da yanlış olması durumunda yanlış sonuç üretir. Diğer durumlarda geriye her zaman doğru sonuç döndürür. Mantıksal DEĞİL operatörü değeri doğru olan ifadeyi yanlış, yanlış olan ifadeyi doğru yapar. Mantıksal operatörler eşitlik ve ilişkisel operatörlere göre daha düşük ama atama operatörüne göre daha yüksek önceliğe sahiptirler.

Kontrol yapıları bir programın akış yönüne karar verir ve program geliştirmede önemli bir yere sahiptir. Bir kod bloğunun çalışıp çalışmaması bazen bir koşulun sağlanıp sağlanmamasına bağlıdır. Bu gibi durumlarda if şartlı deyimi kullanılır. Koşulun sağlanması yani doğru olması durumunda if şartlı deyimi içerisinde bulunan satırların çalışması sağlanır. Eğer koşul sağlanmazsa yani yanlış ise if şartlı deyimine ait blok içerisinde bulunan satırlar çalıştırılmadan program akışı if şartlı deyiminden sonraki satıra yönlendirilir. Benzer şekilde koşulun sağlanmadığı durumda farklı komut satırlarının çalışmasını istiyorsak if -else yapısı kullanılmalıdır. Bu durumda koşul sağlanmazsa else yapısına ait komut satırları çalıştırılır. Yani iki yoldan biri tercih edilmiş olunur.