C++ dilinde karar yapıları, programların belirli koşullara göre farklı yollar izlemesine olanak tanır. En yaygın kullanılan karar yapılarından biri, koşul doğruysa bir işlem gerçekleştiren, yanlışsa başka bir işlem gerçekleştiren if-else
yapısıdır. Bu yazıda, if-else
yapısını detaylı bir şekilde inceleyeceğiz.
if
İfadesi
if
ifadesi, belirli bir koşul doğruysa bir dizi işlemi gerçekleştiren temel bir kontrol yapısıdır. Bu koşul, boolean bir değer (doğru ya da yanlış) döndürmelidir.
if
İfadesinin Temel Söz Dizimi:
if (koşul) {
// Koşul doğruysa çalışacak kod
}
Örnek:
#include <iostream>
using namespace std;
int main() {
int yaş = 25;
if (yaş >= 18) {
cout << "Yaşınız 18 veya daha büyük, giriş yapabilirsiniz!" << endl;
}
return 0;
}
Yukarıdaki örnekte, yaş 18 veya daha büyükse kullanıcıya bir mesaj yazdırılır.
if-else
İfadesi
if
ile yalnızca bir koşul sağlandığında işlem yapılır. Ancak bazen, koşul sağlanmadığında yapılacak farklı bir işlem de eklemek gerekebilir. İşte burada else
devreye girer. else
bloğu, if
koşulu yanlış olduğunda çalışacak işlemleri tanımlar.
if-else
İfadesinin Temel Söz Dizimi:
if (koşul) {
// Koşul doğruysa çalışacak kod
} else {
// Koşul yanlışsa çalışacak kod
}
Örnek:
#include <iostream>
using namespace std;
int main() {
int yaş = 16;
if (yaş >= 18) {
cout << "Yaşınız 18 veya daha büyük, giriş yapabilirsiniz!" << endl;
} else {
cout << "Yaşınız 18'den küçük, giriş yapamazsınız." << endl;
}
return 0;
}
Bu örnekte, yaş 18’den büyükse kullanıcıya bir mesaj yazdırılır. Eğer küçükse, başka bir mesaj gösterilir.
else if
İfadesi
Birden fazla koşulu kontrol etmek istiyorsanız, else if
kullanabilirsiniz. else if
bloğu, ilk koşul yanlış olduğunda devreye girer ve başka bir koşul kontrol edilir. Eğer tüm koşullar yanlışsa, son else
bloğu çalışır.
else if
İfadesinin Temel Söz Dizimi:
if (koşul1) {
// Koşul1 doğruysa çalışacak kod
} else if (koşul2) {
// Koşul1 yanlış, koşul2 doğruysa çalışacak kod
} else {
// Tüm koşullar yanlışsa çalışacak kod
}
Örnek:
#include <iostream>
using namespace std;
int main() {
int yaş = 25;
if (yaş >= 65) {
cout << "Emekli olabilirsiniz." << endl;
} else if (yaş >= 18) {
cout << "Çalışma yaşına geldiniz." << endl;
} else {
cout << "Çocuk yaştasınız." << endl;
}
return 0;
}
Bu örnekte, yaş
değerine göre farklı mesajlar gösterilir:
- 65 yaş ve üzeri emekli olabilir.
- 18 yaş ve üzeri çalışma yaşına gelmiş demektir.
- Diğer yaşlar için çocuk yaştadır.
if
Koşullarında Mantıksal Operatörler Kullanma
Bazen birden fazla koşulu tek bir ifadede kontrol etmeniz gerekebilir. Bunu, mantıksal operatörler (&&
, ||
, !
) kullanarak yapabilirsiniz.
&&
(ve): Her iki koşul da doğruysa işlem yapılır.||
(veya): Koşullardan biri doğruysa işlem yapılır.!
(değil): Koşulun tersi doğruysa işlem yapılır.
Örnek:
#include <iostream>
using namespace std;
int main() {
int yaş = 25;
bool ehliyetVar = true;
if (yaş >= 18 && ehliyetVar) {
cout << "Ehliyet alabilirsiniz." << endl;
} else {
cout << "Ehliyet alamazsınız." << endl;
}
return 0;
}
Bu örnekte, yaş 18 veya daha büyük ve aynı zamanda ehliyet varsa, kullanıcıya ehliyet alabileceği bildirilir.
if
İfadesinin Kısa Yolu:
C++ dilinde, if-else
yapısını daha kısa yazmak için ternary operator (? :
) kullanabilirsiniz. Bu, tek bir satırda bir koşulu kontrol etmenizi sağlar.
Ternary Operator Söz Dizimi:
koşul ? doğruysa_çalışacak_kod : yanlışsa_çalışacak_kod;
Örnek:
#include <iostream>
using namespace std;
int main() {
int yaş = 20;
string mesaj = (yaş >= 18) ? "Yetişkinsiniz" : "Çocuk yaştasınız";
cout << mesaj << endl;
return 0;
}
Bu örnekte, yaş 18 veya daha büyükse “Yetişkinsiniz” yazdırılır, küçükse “Çocuk yaştasınız” mesajı görüntülenir.
Sonuç
if-else
yapısı, C++ programlarında karar vermek için en temel yapıdır. Koşulların doğruluğuna göre farklı işlemler gerçekleştirebilirsiniz. Mantıksal operatörler ve ternary operator gibi özellikler ile bu yapıyı daha etkili ve kısa hale getirebilirsiniz.