C# Şart Blokları – if/else if/else

Şart blokları, programlamada belli bir şarta göre uygulamanın akışını değiştirecek bloklardır. Koşulların kontrolünde kullanılan komutlardır. Koşulların doğru olup olmamasına göre yani şartın sağlanıp sağlanmamasına göre işlem akışı yönlendirilir.

Bunu günlük hayattan bir örnekle somutlaştıracak olursak trafik lambalarına bakabiliriz. Yeşil yandığında geç, kırmızı yandığında dur ifadesi şartlı bir ifadededir. Ya da başka bir örnekte ders notlarımız olabilir. Öğrenci eğer 100’le 80 arasında aldıysa A, 80le 70 arasında ise B, 70’le 60 arasındaysa C, 60’la 50 arasındaysa D ve eğer 50den aşağı bir not aldıysa da F harf notunu ver şeklindeki ifade de yine şart blokları devreye girmektedir.

Şart bloklarında programı şartın sağlanmasına göre yönlendiririz. Eğer bu şart sağlanıyorsa bunu yap, bu şart sağlanıyorsa bunu ve eğer hiçbir şart sağlanmıyorsa da bunu yap şeklinde programa yön veririz.

Şart bloklarını programlama da “if – else if – else” bloğu ile yaparız. If anahtar kelimesi İngilizce de “eğer” anlamında kullanılmaktadır.

if (koşul1 veya koşul grubu1) işlem-1;
else if (koşul2 veya koşul grubu2) işlem-2;
else if (koşul3 veya koşul grubu3) işlem-3;
else işlem-n;

Visual Studio’da if yazıp iki kere Tab tuşuna bastığımızda if bloğu oluşmaktadır.

Ara ara konuların içinde yeri geldikçe farklı konulara değineceğiz. Kafanızı karıştırmasın. Böylece kullanımları da daha net anlaşılacaktır.

= (eşittir), tek başına kullanıldığında programlama da atama işlemi yapar.

int a = 5;

a değişkenine 5 değerini atadık. Ancak çift eşittir (==) operatörü, mantıksal bir operatördür. Eşit mi şeklindeki bir sorguda kullanılır.

If – Else Şart Bloğu

Bir kod örneği ile inceleyelim.

var sayi = 15;
if(sayi == 5)
{
        Console.WriteLine("Sayı 5'tir");
}
else
{
        Console.WriteLine("Sayı 5 değildir.");
}
Console.ReadLine();

Değeri değiştirip 15 yaparsak if koşulu doğru olmayacak ve else yani değil koşuluna girecek “Sayı 5 değildir.” çıktısını verecektir. Örnekten de yola çıkarak if bloğuna koşul yazarız, else bloğu ise if koşulunda yer almayan her şey içindir. Else bloğuna koşul yazılmaz. Böylece if koşuluna girmeyen şartlar else bloğuna girer.

Bu yukarıda gördüğünüz haliyle klasik if-else bloğudur. Bu ifadeyi farklı bir formatla da yazabiliriz.

Single Line If

var sayi = 10;
Console.WriteLine(sayi == 10 ? "Sayı 10'dur." : "Sayı 10 değildir");
Console.ReadLine();
  • İkinci satırda Console.WriteLine içerisine yazdığımız ifadeyi okursak;
    • sayi == 10 ? sayı 10’sa
    • “Sayı 10’dur.” yazdır
    • değilse : “Sayı 10 değildir” yazdır.

İlk olarak şart, sonra doğru olduğunda yapılacak ve değil yani şart yanlışsa yapılacak olarak sıralanabilir. Bu yazım tekniğine Single Line If denmektedir.

Else-if Bloğu

Peki bizim her zaman iki seçeneğimiz mi olmalı? Yani hep doğruysa bunu değilse bunu yap şeklinde mi yazmalıyız? Elbette hayır. Farklı koşullarımızda olabilir. Örneğin harf notu örneği vermiştik yukarıda. Birden fazla koşul vardı. Bunun programlama da karşılığı “else-if” bloğudur.

var sayi = 7;
if(sayi == 5)
{
        Console.WriteLine("Sayı 5'tir");
}
else if(sayi == 7)
{
        Console.WriteLine("Sayı 7'dir.");
}
else
{
        Console.WriteLine("Sayı 5 veya 7 değildir.");
}
Console.ReadLine();

Kodda sırayla bakılır. If bloğuna giriyor mu? Eğer girmiyorsa bi aşağı blok olan else if bloğuna bakılır. Ona da girmez ise en son else bloğuna bakılır. Birden fazla else-if bloğu olabilir. If ve else bloğu bir tanedir.

Şartlı ifadeler ile ilgili daha fazla örnek için buraya tıklayabilirsiniz.

4 yorum
Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bunları da okumak ister misiniz
Devamını oku

C# Döngüler

Şart bloklarından sonra döngüler konusuna giriş yapacağız. Döngüler, programlamada belli satırların tekrar tekrar çalıştırılmasını sağlayan ve programlamada en…
Devamını oku
Devamını oku

C# Metotlar

Programlamada önemli unsurlardan biri olan metotlarla devam edelim. Metotlar belli işlemleri yerine getiren kod bloklarıdır. Metot kullanılmak istendiğinde,…
Devamını oku