duyuruElektroArge.com'a Hoşgeldiniz. Üye Olmak İçin Tıklayın. duyuru





houseForum ana sayfa   iletişimİletişim   bilgiSSS  
kırmızı yeşil mavi
ekleKayıt  anahtarGiriş
evForum ana sayfa goE-Kütüphane goE-Ders goC#
 

  • Reklam

Ders 32 - Döngüleri Yönlendirme Komutları

C Dili Dersleri - Okan Bilke

Ders 32 - Döngüleri Yönlendirme Komutları

Mesajgönderen okanbilke » 04 Eki 2015 18:16

Önceki dersimizde görmüş olduğumuz döngü kod bloklarına ait kullanabileceğimiz özel komutlar bulunmaktadır. Bu komutlar sayesinde döngü içerisinde daha rahat kod yazabilmekteyiz. Aşağıda bu komutlar incelenmektedir.
CONTINUE
Kod blokları işletilirken belirli koşulların sağlanması durumunda o satırdan sonraki (Döngü Bloğu İçerisinde) kodların işletilmesini istemeyebilirsiniz (başa dönmek için). İşte bu tip durumlarda baş vuracağınız komut kesinlikle continue olmalıdır.
private void button1_Click(object sender, EventArgs e)
{
int ToplamDeger = 0, i = 0;
for (; i <= 20; )
{
i++;
if (i % 2 != 0)
{
continue; // Fora Tekrar Dön
}
ToplamDeger += i;
}
this.Text = ToplamDeger.ToString(); // 110 yazar
}

Bu komut while döngüsü içerisinde de aynen kullanılabilmektedir. Sonuç aynı olacaktır. Şimdi while ile bir çözüm üretelim.
private void button1_Click(object sender, EventArgs e)
{
int ToplamDeger = 0, i = 0;
while (i <= 20)
{
i++;
if (i % 2 != 0)
{
continue; // While'a Tekrar Dön
}
ToplamDeger += i;
}
this.Text = ToplamDeger.ToString(); // 110 değer
}

Şayet continue komutunu foreach ile beraber kullanacaksanız o zaman kodunuzun aşağıdaki şekilde olması gerekecektir.
private void button1_Click(object sender, EventArgs e)
{
int[] DiziElemanlar = { 10, 11, 12, 13, 14, 15 };
int ToplamDeger = 0;
foreach (int Eleman in DiziElemanlar)
{
if (Eleman % 2 != 0)
{
continue; // Foreach'e Tekrar Dön
}
ToplamDeger += Eleman;
}
this.Text = ToplamDeger.ToString(); // 36 Yazar
}

BREAK
Çalışma mantığı olarak continue komutuna çok benzer bir mantık kullanır. Tek fark continue komutunda başa dönülürken, break komutunda ise döngüden çıkılmaktadır. Aşağıdaki örnek uygulamada koşul sağlandığı zaman yaratılmış bulunan sonsuz döngüden çıkılarak kod sonlandırılmaktadır.
private void button1_Click(object sender, EventArgs e)
{
int ToplamDeger = 0, i = 0;
for (; true; ) // Sonsuz Döngü
{
if (i > 20)
{
break; // For dan Çık
}
ToplamDeger += i;
i += 2;
}
this.Text = ToplamDeger.ToString(); // 110 Yazar
}

Özellikle aynı sonucu veren örnekler çözülerek komutların farklarını anlayabilmeniz sağlanmaya çalışılmaktadır. Break komutu sadece for döngüsü için kullanılmaz, dilerseniz while-foreach döngüleri içinde kullanılabilmektedir. Aşağıdaki örnekler bu hususu içermektedir.
private void button1_Click(object sender, EventArgs e)
{
int ToplamDeger = 0, i = 0;
while (true) // Sonsuz Döngü
{
if (i > 20)
{
break; // While dan Çık
}
ToplamDeger += i;
i += 2;
}
this.Text = ToplamDeger.ToString(); // 110 Yazar
}

Komutun foreach içerisindeki kullanımı aşağıda verilmiştir. Değişik durumlar yaratıp yeni örnekler türetebilirsiniz.
private void button1_Click(object sender, EventArgs e)
{
int[] DiziElemanlar = { 10, 11, 12, 13, 14, 15 };
int i = 0;
foreach (int Eleman in DiziElemanlar)
{
i++;
if (Eleman == 12)
{
break; // Foreach'den Çık
}

}
this.Text = i.ToString() + ". Elemanın Değeri 12 dir";
}
okanbilke@gmail.com
Kullanıcı avatarı
okanbilke
Site Kurucusu
Site Kurucusu
 
Mesajlar: 721
Beğendiklerim: 0 mesaj
Beğenilenlerim: 0 mesaj
Kayıt: 15 Mar 2013 13:09
Konum: Ankara

Reklam

Dön C#

Kimler çevrimiçi

Bu forumu gezen kullanıcılar: Hiç bir kayıtlı kullanıcı yok ve 1 misafir


  • Reklam
cron