Koşul İfadeleri ve Döngüler

Koşul İfadeleri ve Akış Kontrolü

if…else Bloğu
if…else yapısı uygulamalarımızda sık sık kullandığımız ve kullanmak zorunda olduğumuz bir yapıdır. Programlamayı if…else blokları olmadan düşünmek imkansızdır. Koşul ifadeleri uygulamalarımızda bir karar verme mekanizması gibi davranır. 

if(bool bir ifade)
   Doğru ise
else
   Yanlış ise


Örnek;
if (ad == "Ahmet")
    Console.WriteLine("Merhaba Ahmet.");

Örnek;
if (ad == " Ahmet ")
    Console.WriteLine("Merhaba Ahmet.");
else
    Console.WriteLine("Sende Kimsin...");

  !  Eğer if ve else blokları içinde birden fazla satır kod yazmak istiyorsanız { }ifadelerini kullanmanız gerekir.
if (ad == " Ahmet ")
{
    gelenKisi = ad;
    Console.WriteLine("Merhaba Ahmet. Ne zamandır gözükmüyodun...");
}
else
{
    gelenKisi = "İzinsiz";
}


 ! if ifadesini isterseniz else bloklarında da kullanabilirsiniz. Böylece karşılaştırma kriterinizi genişletmiş olursunuz.
if (ad == " Ahmet ")
{
    gelenKisi = ad;
    Console.WriteLine("Merhaba Ahmet. Ne zamandır gözükmüyodun...");
}
else if (ad == "Metin")
{
    gelenKisi = ad;
    Console.WriteLine("Vaaaay Sen Ha...");
}
else
{
    gelenKisi = "İzinsiz";
    Console.WriteLine("Sende Kimsin...");
}

! if… else bloklarını iç içe de kullanabilirsiniz.
if (yas > 25)
{
    if (yas == 26)
    {
        Console.WriteLine("Sınırda Geziyosun...");
    }
    else
    {
        Console.WriteLine("Yaş Kemale Ermiş Gibi...");
    }              
   
}
else
{
    Console.WriteLine("Daha Gençsin Ya...");
}

 
switch…case İfadesi
Karşılaştırma yapacağınız ifadenin alabileceği değerler fazla ise çok fazla if else if ifadesi yazmak yerine karşılaştırmamızı swtich…case yapısını kullanarak oluşturmamız hem kodumuzun okunurluğu arttırır hem de daha hızlı kod yazmamızı sağlar.
switch (değişken)
{
    case sabit değer : kod bloğu;
        break;
    case sabit değer : kod bloğu;
    break;
    default:
        kod bloğu;
}

Örnek;
Console.WriteLine("Lütfen Yaşınızı Giriniz");
int yas;
yas = Convert.ToInt32(Console.ReadLine());
switch (yas)
{
    case 20: Console.WriteLine("Genç Adam Merhaba");
        break;
    case 25: Console.WriteLine("Merhaba Deli Kanlı");
        break;
    case 35: Console.WriteLine("Merhaba Dayı");
        break;
    default:
        Console.WriteLine("Merhaba");
        break;
}


Döngülerin Kullanımı
Bir kod bloğunun belirli şartlara bağlı veya bağımsız olarak ardışık olarak çalıştırılması için döngüler kullanılır.

for  Döngüsü
En temel döngü yapısı for döngüsüdür. C# da for döngüsü kullanımı C/C++ ve Javada ki gibidir. Basit bir for döngüsünün yapısı aşağıdaki gibidir.
for (başlangıç; koşul; artım / azalım)
{
    //kod bloğu
}

Örnek; Sıfırdan dokuza kadar olan sayıları konsol ekranına yazan basit bir for döngüsü yapalım.
for (int i = 0; i < 10; i++)
{
    Console.WriteLine("Döngüde i değeri şuan : {0}",i);
}

Yukarıdaki for döngüsü sonucu ekran çıktısı aşağıdaki gibi olur.
Döngüde i değeri şuan : 0
Döngüde i değeri şuan : 1
Döngüde i değeri şuan : 2
Döngüde i değeri şuan : 3
Döngüde i değeri şuan : 4
Döngüde i değeri şuan : 5
Döngüde i değeri şuan : 6
Döngüde i değeri şuan : 7
Döngüde i değeri şuan : 8
Döngüde i değeri şuan : 9
Devam etmek için bir tuşa basın . . .


for (; ; )
for (; i < 10; i++)
for (int i = 3; ; i--)
for (; i < 5; )


! Döngümüzü belli bir koşul altında sonlandırmak istiyorsak break komutunu kullanırız.

Örnek;
for (int i = 0; i < 10; i++)
{
    if (i > 5)
    {
        break;
    }
    Console.WriteLine("Döngüde i değeri şuan : {0}", i);
}

      Yukarıdaki kodda i değeri 5 den büyük olduğunda break komutu çalışarak döngünün sonlanmasına sebep olur. Ekran çıktısı aşağıdaki gibi olur.
Döngüde i değeri şuan : 0
Döngüde i değeri şuan : 1
Döngüde i değeri şuan : 2
Döngüde i değeri şuan : 3
Döngüde i değeri şuan : 4
Döngüde i değeri şuan : 5
Devam etmek için bir tuşa basın . . .

      ! Belli bir koşul altında döngü içine yazdığımız kodların çalışmayarak bir sonraki döngü adımına geçmek istiyorsak continue komutunu kullanırız.

Örnek;
for (int i = 0; i < 10; i++)
{
    if (i == 5)
    {
        continue;
    }
    Console.WriteLine("Döngüde i değeri şuan : {0}", i);
}

      i değeri 5 olduğu zaman continue komutu çalışarak döngüyü bir sonraki adıma taşır, bunun sonucu aşağıdaki ekran çıktısı oluşur.
Döngüde i değeri şuan : 0
Döngüde i değeri şuan : 1
Döngüde i değeri şuan : 2
Döngüde i değeri şuan : 3
Döngüde i değeri şuan : 4
Döngüde i değeri şuan : 6
Döngüde i değeri şuan : 7
Döngüde i değeri şuan : 8
Döngüde i değeri şuan : 9
Devam etmek için bir tuşa basın . . .

do… while Döngüsü
do…while döngüsünün temel yapısı aşağıdaki gibidir.
do
{
    // çalışacak kod
}
while(koşul);

      ! Döngü içine yazılan kod ilk olarak çalışır daha sonra while kısmındaki koşul kontrol edilir, burada bulunan koşul true değer döndürdüğü sürece döngü tekrar tekrar çalışır.

Örnek;
int i = 0;
do
{
    Console.WriteLine("do while döngüsü içinde i değeri şuan: {0}", i);
    i++;
}
while (i<10);

      Ekran görüntüsü;
do while döngüsü içinde i değeri şuan: 0
do while döngüsü içinde i değeri şuan: 1
do while döngüsü içinde i değeri şuan: 2
do while döngüsü içinde i değeri şuan: 3
do while döngüsü içinde i değeri şuan: 4
do while döngüsü içinde i değeri şuan: 5
do while döngüsü içinde i değeri şuan: 6
do while döngüsü içinde i değeri şuan: 7
do while döngüsü içinde i değeri şuan: 8
do while döngüsü içinde i değeri şuan: 9
Devam etmek için bir tuşa basın . . .


ü  do…while döngüsü içine yazılan kod bloğu her zaman ilk seferde çalışır.
ü  while ifadesinden sonra noktalı virgül kullanılır.

while Döngüsü
Hemen hemen do…while döngüsü ile aynı özellikleri taşır. Sadece ilk çalışma mantıkları farklıdır.
! do…while döngüsü ilk olarak kod bloğuna girer daha sonra koşul kontrol edilir, böylece koşul doğru olsada olmasada kod bloğu bir kez çalışır.
! while döngüsü ise kod bloğuna girmeden önce koşul durumunu kontrol eder, eğer koşul doğru değilse kod bloğu asla çalışmaz. Bu küçük ama çok önemli bir farktır.
while döngüsünün temel yapısı aşağıda ki gibidir.
while (koşul)
{
    //kod bloğu
}

! Koşul ifadesi doğru ise while içinde yazılan kod bloğu çalışır. koşul yanlış olduğu anda döngü sona erer.

Örnek;
int sayac = 0;
while (sayac<10)
{
    Console.WriteLine("Sayac Değeri: {0}",sayac);
    sayac++;
}

Yorum Gönder Blogger

 
Üst