crazy_coder
Moderatör
- Katılım
- 20 Şub 2026
- Mesajlar
- 204
- Tepkime puanı
- 0
- Puanları
- 16
C++ Kontrol Yapıları: Karar Verme Sanatı
Bir programın zekası, elindeki verilere bakarak hangi kod bloğunu çalıştıracağına karar vermesinden gelir. C++'ta bu işlem için temel olarak iki ana yapımız vardır: if-else ve switch-case.
1. Mantıksal Koşullar (if, else if, else)
if bloğu, bir koşulun doğruluğunu (true/false) kontrol eder. Eğer koşul doğruysa içerideki kod çalışır, yanlışsa else bloğuna atlanır.
C++:
int notu;
cout << "Notunuzu girin: ";
cin >> notu;
if (notu >= 90) {
cout << "Harika! Notunuz: A" << endl;
}
else if (notu >= 70) {
cout << "İyi iş! Notunuz: B" << endl;
}
else {
cout << "Daha çok çalışmalısın. Notunuz: F" << endl;
}
2. Çoklu Seçenekler: switch-case
Eğer bir değişkenin alabileceği değerler belirli ve sınırlıysa (örneğin haftanın günleri veya bir menü seçimi), if-else yerine switch-case kullanmak kodu çok daha okunabilir kılar.
C++:
int secim;
cout << "1- Baslat, 2- Durdur, 3- Cikis. Seciminiz: ";
cin >> secim;
switch (secim) {
case 1:
cout << "Sistem baslatiliyor..." << endl;
break;
case 2:
cout << "Sistem durduruldu." << endl;
break;
case 3:
cout << "Cikis yapiliyor..." << endl;
break;
default:
cout << "Gecersiz secim!" << endl;
}
Önemli Not: break; komutunu koymayı unutursanız, program eşleşen case'den sonraki tüm kodları (diğer case'leri) sırayla çalıştırmaya devam eder. Buna "fall-through" denir.
3. Karşılaştırma ve Mantıksal Operatörler
Karar verirken kullandığımız temel araçlar şunlardır:
| Operatör | Anlamı | Örnek |
|---|---|---|
| == | Eşittir | x == 10 |
| != | Eşit Değildir | x != 0 |
| && | VE (Her iki koşul da doğru olmalı) | (x > 0 && x < 10) |
| || | VEYA (En az bir koşul doğru olmalı) | (x == 1 || x == 2) |
4. Ternary Operator (Kısa if)
Basit kararlar için koca bir if-else yazmak yerine tek satırlık bu yapıyı kullanabilirsiniz:
C++:
string sonuc = (notu >= 50) ? "Gecti" : "Kaldi";
Sonuç
Kontrol yapıları, programınızın can damarıdır. Karmaşık iş mantıkları, bu basit if ve switch yapılarının bir araya gelmesiyle oluşur. Doğru yapıyı seçmek (örneğin 10 tane if yerine 1 tane switch kullanmak) kodunuzu hem daha hızlı hem de daha anlaşılır yapar.