C# Karar ve Kontrol Deyimleri

C# Dersleri Ahmet Şenlik 95.486 kez görüntülendi.
sponsorlu reklam

C# Karar ve Kontrol Deyimleri

Program yazarken bazen koşullar altında gerçekleşmesini istediğiniz durumlar olabilir. Bu bölümde anlatılan if-else ve switch deyimleri ile bu tür kapsamlı programlar geliştirilebilir. Genel anlamda programlama dilinde kullanılan koşul yapıları iki çeşittir.

 

 

 

 

Bunlar;

  • if-else deyimi
  • switch deyimi

dir.

If-Else Deyimi

Belirli bir koşula göre yapılması istenilen işlemler, If-Else deyimi kullanılarak gerçekleştirilir. If-Else deyiminin kullanımı ve akış diyagramları ile gösterimi ise şu şekildedir.

if-else
Diyagramda gördüğünüz gibi, programın akışı if deyiminin olduğu satıra geldiğinde parantezler içerisindeki KOŞUL ifadesi çalıştırılır. Bu koşul ifadesi true (Doğru) yada false (Yanlış) olmak üzere bir değerüretmektedir.

Eğer programımızda koşulub doğru olmasına bağlı işlem yapmak istiyorsanız, koşulun yanlış olduğu durumlarda işlem yapılması istenmiyorsanız Else bloğu program içerisinde hiç kullanılmaz.

If koşul deyimlerinde zaman zaman birden fazla koşula bağlı işlemler yapmamız gerekebilir.

VE ( && ) bağlacı

VEYA ( || ) bağlacı

Örnek : Klavyeden girilen sayının hem 4’e hem de 5’e kalansız bölünüp bölünemediğini ekrana yazan programı yazınız.

Console.Write(“Bir sayı giriniz:”);
int sayi = Convert.ToInt32(Console.ReadLine());
if((sayi % 4 == 0) && (sayi % 5 ==0))
{
Console.WriteLine(“{0} sayısı hem 4’e hem de 5’e kalansız bölünebilir”,sayi);
}
else
{
Console.WriteLine(“{0} sayısı hem 4’e hem de 5’e kalansız bölünemez”, sayi);
}

İç-İçe if ifadesi

Birden fazla koşula ihtiyaç duyulan durumlarda iç-içe if ifadeleri kullanılırlar. Bir if koşuluna kaç tane else if ekleyebileceğiniz konusunda hiçbir sınır yoktur. iç-içe if ifadelerinin kullanımı ise şu şekildedir.

İç-İçe if ifadesinin başka bir kullanım şeklide şöyledir.

 



 

Switch-Case Deyimi

Switch-Case deyimi de If-Else deyimleri gibi karar kontrol mekanizmalarında kullanılmaktadır.Switch-Case deyimi genellikle karmaşık if-else bloklarının yerine, daha okunabilir oldukları için tercih edilmektedir. Switch-Case ile yapabileceğimiz karşılaştırmaları if-else ile de yapabiliriz. Switch-Case yapısı şu şekilde çalışır; bir deyimin değeri, sabitlerden oluşan bir listede peş peşe test edilir. Deyimin değeri sabitlerden birisiyle eşleşince, bu eşleşmeyle ilgili işlemler gerçekleştirilir. Switch-Case ifadesinin genel formu şu şekildedir;

Switch-Case yapısının çalışmasına bir göz atalım;

  • Önce switch parantezleri içerisindeki ifade hesaplanır.
  •  Programın akışı, hesaplanan ifade ile aynı case sabitinin bulunduğu satıra gelir.
  •  Eğer hesaplanan ifade, mevcut case sabitlerinden herhangi birisi ile eşleşmiyorsa default anahtar sözcüğünün bulunduğu yere gelir ve program buradan devam eder.

Her case satırı içerisindeki işlemlerimiz tamamlandıktan sonra, ilgili case satırının sonuna geldiğimizi belirtmek için break komutu kullanılır.

Switch-Case Yapısı İle İlgili Önemli Kurallar:

 

  •  Case anahtar sözcüğünün yanındaki ifadeler sabit olmak zorundadırlar. Bu ifadeler içerisinde değişken bulunamaz.
  •  Case ifadeleri herhangi bir tam sayı sabiti, karakter veya string sabiti olabilir.
  •  Default durumunu istediğimiz yere yazabiliriz. Aynı şekilde case ifadelerini de istediğimiz sırada yazabiliriz.
  •  Bir switch bloğunda iki veya daha fazla sayıda aynı değere sahip case ifadesi bulunamaz.
  • Bir switch bloğunda default case olmak zorunda değildir.

Akış herhangi bir case ifadesine geldiğinde, akış farklı bir case ifadesine yönlendirilmek istenirse goto anahtar sözcüğü kullanılır.

Örnek:

Kaynak: Megep Modülleri

Sosyal Ağlarda Paylaş

Bir cevap yazın

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.