Etiket arşivi: else if

C#’da Kontrol Deyimleri

1-if deyimi

if deyimi programın akışını koşula bağlı olarak true yada false sonucunu döndürür.

Tek komut için kullanımı

if(koşul) tek_satir;

if içinde birden çok komut çalıştırılacak ise;

if(koşul)

{

//koşul sağlandığında işlenecek komutlar  (koşul=true)

Komut1;

Komut2;

}else

{

//koşul sağlanmadığında yapılacaklar (koşul=false)

Komut1;

Komut2;

}

Aşağıdaki örnek programı inceleyelim;


int a = 5;

if (a < 6)

MessageBox.Show("Sayı 6 dan küçük");

Yukarıdaki program çalıştığında Sayı 6 dan küçük yazacaktır. Çünkü a değişkenin değeri 6 dan küçüktür. Sadece bir komut işleteceğimiz için blok içinde yazmadık.


int a = 5;

if (a > 6)

{

MessageBox.Show("Sayı 6 dan büyük");

}

if(a <= 6)

{

MessageBox.Show("Sayı 6dan küçük veya eşit");

}

Yukarıdaki program çalıştığında Sayı 6dan küçük yazacak ancak kontrol edilecek a değişkeni için ayrı ayrı if bloğu tanımlamak pratik bir kullanım değildir. Yukarıdaki örneği ikinci bir if bloğu tanımlamak yerine pratik bir şekilde else komutu ile yapabiliriz.


int a = 5;

if (a > 6)

{

MessageBox.Show("Sayı 6 dan büyük");

}

else

{

MessageBox.Show("Sayı 6dan küçük veya eşit");

}

Yapılan karşılaştırmada ikiden fazla olasılık varsa birden fazla else kullanabiliriz.

İf(koşul1)

{

Koşul1 sağlandığında yapılacaklar

}else if(koşul2)

{

Koşul1 sağlanmadığında , Koşul2 sağlandığında yapılacaklar

}else if(koşul3)

{

Koşul1 ve koşul2 sağlanmadığında Koşul3 sağlandığında yapılacaklar

}

Aşağıdaki örneği inceleyelim;


int a = 6;

if (a > 6)

{

MessageBox.Show("Sayı 6 dan büyük");

}

else if(a<6)

{

MessageBox.Show("Sayı 6dan küçük");

}

else if (a == 6)

{

MessageBox.Show("A değişkeninin değeri 6'dır");

}

2- ? : Operatörü

Sadece tek koşul ve koşulun true veya false olması sonucunda tek değişkenin alacağı iki farklı durum söz konusu olduğu karşılaştırmalarda ? : operatörürünü kullanabiliriz. Örnek Program ;


int a = 6;

string sonuc = a > 0 ? "Sıfırdan Büyük" : "Sıfırdan Küçük";

label1.Text = sonuc;

yukarıdaki programın çıktısında Sıfırdan Büyük yazdığını görürüz. Yukarıdaki programı if ile yapalım.


int a = 6;

if (a > 0)

label1.Text = "Sıfırdan Büyük";

else

{

label1.Text = "Sıfırdan Küçük";

}

Yukarıdaki programın çıktısıda ilk örnekteki gibi aynı olur. 2 olasılık söz konusu olduğunda ? operatörünü kullanmak daha pratiktir.

 

3- Switch Case Deyimi

 

Switch Case işlev bakımından if deyimine benzer. Çok sayıda iç içe if kullanıldığı zaman programın okunurluğu zorlaşır bu durumlarda switch case kullanılması önelirilir.

switch(kontrol değişkeni)

{

case değer1:

……….

break;

case değer2:

………..

break;

default: //case durumları dışında kalan tüm değerler için işletilecek

//ortak komutlar varsa seçimlik olarak default bloğu da dahil edilir.

………..

break;

}

Switch Case kullanılarak  Türkçe karakterleri temizleyip son halini label’a yazan program. Formumuza bir label bir tanede textBox ekleyelim ve textBox’ın KeyPress olayına aşağıdaki kodları yazalım.


switch (e.KeyChar)

{

case 'ç':

e.KeyChar = 'c';

break;

case 'ı':

e.KeyChar = 'i';

break;

case 'ş':

e.KeyChar = 's';

break;

case 'ü':

e.KeyChar = 'u';

break;

case 'ö':

e.KeyChar = 'o';

break;

case 'ğ':

e.KeyChar = 'g';

break;

case 'Ç':

e.KeyChar = 'C';

break;

case 'İ':

e.KeyChar = 'I';

break;

case 'Ş':

e.KeyChar = 'S';

break;

case 'Ü':

e.KeyChar = 'U';

break;

case 'Ö':

e.KeyChar = 'O';

break;

case 'Ğ':

e.KeyChar = 'G';

break;

}

label1.Text = e.KeyChar.ToString();