C# Karar Yapıları (Kontrol İfadeleri)
Programlamada bazı kod bloklarının sadece belirli koşullar gerçekleştiğinde çalışmasını isteriz. C# dilinde bu mantıksal denetimi sağlamak için If-Else ve Switch-Case yapıları kullanılır.
Mantıksal Operatörler
==: Eşittir |!=: Eşit Değildir&&: VE (Her iki koşul da doğru olmalı)||: VEYA (En az bir koşul doğru olmalı)
1) If - Else Yapısı
En temel karar yapısıdır. Bir koşulun doğru (true) olup olmadığını denetler.
int saat = 14;
if (saat < 12) {
Console.WriteLine("Günaydın!");
}
else if (saat < 18) {
Console.WriteLine("İyi Günler!");
}
else {
Console.WriteLine("İyi Akşamlar!");
}
2) Switch-Case Yapısı
Bir değişkenin alabileceği çok sayıda spesifik değer varsa, if-else yerine daha okunaklı olan switch yapısı tercih edilir.
int gun = 3;
switch (gun) {
case 1:
Console.WriteLine("Pazartesi");
break;
case 2:
Console.WriteLine("Salı");
break;
case 3:
Console.WriteLine("Çarşamba");
break;
default:
Console.WriteLine("Geçersiz Gün");
break;
}
⚠️ Dikkat:
switch yapısında her case bloğunun sonunda break; komutunu kullanmak zorunludur. Aksi takdirde C# derleyicisi hata verecektir (JavaScript'ten farklı olarak "fall-through" kuralı daha katıdır).
Kısa Koşul (Ternary Operator)
Basit bir if-else işlemini tek satırda yazmak için kullanılır:
string sonuc = (yas >= 18) ? "Reşit" : "Reşit Değil";
Özet
- Karar yapıları programın akış yönünü belirler.
- Karmaşık mantıksal sorgular için
&&ve||operatörlerinden yararlanılır. switchyapısı sadece eşitlik durumlarını kontrol ederken,ifyapısı ile aralık kontrolü (büyüktür, küçüktür) yapılabilir.