Asp.Net Döngüler ve Örnekler for each while do while

asp_net-logo

Döngüler; bir program içersinde belirli kodların tekrar etmesini sağlayan yapıya denir. Döngü yapısı içindeki kod bloğunun tekrar edilip edilmeyeceği mantıksal bir ifadenin sonucuna göre karar verilir. Kodun belirli bir sayıda tekrar edilmesini sağlayan for döngüsü gibi, belirsiz sayıda tekrar edilmesini sağlayanwhile veya do-while döngüleri de bulunur.

Döngü ifadeleri olarak;
for,while ve do-while göreceğiz.Bunların dışında  foreach döngüsünü dizilerde göreceğiz. 

for ve while döngüleri, mantıksal ifadenin en başta sınandığı yapılardır. Mantıksal ifade doğruysa, döngüye girilir yoksa döngüden çıkılır. do-while döngüsü, tekrar bloğunun en sonunda sınamanın yapıldığı yapılardır. Kod bloğunu bir kez işletir ve bir kez daha tekrarlanabileceği konusunda mantıksal ifadenin sonucuna bakılır.

1.While Döngüsü; While döngüsü belirli bir koşula bağlı olarak işlemlerin gerçekleştirilmesini sağlar.
Döngülerde üç kural bulunur.

1.Değişken tanımlama ilk değer atama (int a=0)
2.Değişken karşılaştırılması (a<=10)
3.Değikenin döngü içinde değiştirilmesi (a++)
Değişkenlerde bu üç kurala dikkat edilmelidir.While döngüsü kullanımı aşağıdaki gibidir.

while (mantıksal ifade doğru)

{

    ifade ;

    ifade ;

}

Örnek: while döngüsü ile sayfa yüklendiğinde 0’dan 100’e kadar olan sayıları Response ile aralarına boşluk koyarak yazdıralım.

protected void Page_Load(object sender, EventArgs e)
{
int i=0;
while (i <= 100)
{
Response.Write(i + ” “);
i++; // i=i+1;, i+=1; şeklinde de yazılabilir.
}
}

örneğimizde bir değiken tanımlama var (int i=0;) , bir karşılaştırma var (i<=100) ve bir arttırma işlemi (i++;) vardır.

Örnek;  0’dan 100’e kadar olan sayılarda 7 ve katlarını yazdıralım.

protected void Page_Load(object sender, EventArgs e)

{
int i=0;
while (i <= 100)
{
Response.Write(i + ” “);
i+=7;

// i=i+7; şeklinde de yazılabilir.
}
}

Bunları yanyana değilde alt alta yazdırmak isteseydik.   Response.Write(i + ” “); ifadesini, Response.Write(i + “<br>”); olarak değiştirmeliyiz.

Örnek: 0-100 arası tek sayıları Label1’e çift sayıları Label’2 ye yazdıran programı yapınız. Aşağıdaki gibi yazdırılacak.

Tek Sayılar: 1 3 5 7 9  …
Çift Sayılar: 0 2 4 6 8 ….

protected void Button1_Click(object sender, EventArgs e)
{
Label2.Text = “Çift Sayılar:”;
Label1.Text = “Tek Sayılar:”;
int i = 0;
while (i <= 100)
{
if (i % 2 == 0)
Label2.Text +=” ” + i;
//Label2.Text=Label2.Text+” “+ i;
else
Label1.Text +=” ” + i;
i++;
}
}

2.do-while Döngüsü; bu döngü türünde mantıksal ifade sondadır. Bundan dolayı mantıksal ifade sağlansın yada sağlanması döngü içine muhakkak girilecektir. do-while ile ilgili bir örnek vererek geçeceğiz. Aşağıdaki şekilde kullanılır.

do

{

   ifade ;

   ifade ;

while ( mantıksal ifade doğru) ; // sonunda ; simgesi var

Örnek: yukarıda while döngüsü ile yapmış olduğumuz sayfa yüklendiğinde 0’dan 100’e kadar olan sayıları Response ile aralarına boşluk koyarak do-while ile yazdıralım.

protected void Page_Load(object sender, EventArgs e)
{
int i=0;
do
{
Response.Write(i + ” “);
i++; // i=i+1;, i+=1; şeklinde de yazılabilir.
}
while (i <= 100);
} 

3.for döngüsü: for döngüsü en çok kullanılan döngü türüdür.Aşağıda for döngüsünün kullanımına bakalım.

for (deyim1 ; deyim2 ; deyim3)

{

     ifadeler ;

 }

deyim1: bu ifade değişkenin tanımlnacağı yerdir. yazılacak olan ifade for döngüsüne ilk girildiğinde çalıçacaktır. (int i=0;)

deyim2: Mantıksal karşılaştırmanın yapılacağı bölümdür.Buradaki mantıksal ifade doğru ise döngü içine girilecektir. (i<=50;) 

 deyim3: deyim1 tanımlana değişkenin artımı ve azalımının yapıldığı bölümdür.

Örnek: for döngüsü ile sayfa yüklendiğinde 0’dan 100’e kadar olan sayıları Response ile aralarına boşluk koyarak yazdıralım.

protected void Page_Load(object sender, EventArgs e)

{
for (int i = 0; i <= 100; i++)
{
Response.Write(i+” “);
}
}

Örnek: for döngüsü ile sayfa yüklendiğinde 0’dan 100’e kadar olan sayıları 5’er 5’er Response ile aralarına boşluk koyarak yazdıralım.

protected void Page_Load(object sender, EventArgs e)

{
for (int i = 0; i <= 100; i+=5)

// i=i+5 şeklinde olabilir
{
Response.Write(i+” “);
}
}

Örnek: 7 ile 150 arasında 4’e tam bölünebilen sayıları yazdıralım.

protected void Page_Load(object sender, EventArgs e)

{
for ( int i = 7; i <= 150; i++)
{
if (i%4==0)
Response.Write(i+” “);
}
}

Nasıl Döngü Kurmalıyım

Örneğin; Textbox1’e girilen sayıdan 100’e kadar döngüsünü nasıl kurarım.

int sayi1=int.Parse(TextBox1.Text);

for (int i = sayi1; i < 100; i++)
{
}

Örneğin; Textbox1’e girilen sayıdan TextBox2’ye girilen sayıya kadar döngüsünü nasıl kurarım.

int sayi1=int.Parse(TextBox1.Text);

int sayi2=int.Parse(TextBox2.Text);

for (int i = sayi1; i < sayi2; i++)
{
}

Örneğin; 500’den  10’a kadar birer azaltarak döngüsünü nasıl kurarım.

for (int i = 500; i >=10; i–)
{
}

Döngüden Çıkış 

  • break anahtar kelimesi döngü yapısından çıkış için kullanılabilir. break iç taraftaki döngüden çıkış için kullanılabilir.
  • continue, bulunulan yerden döngünün sonuna gitmek için kullanılır.

Örnek: Aşağıdaki programda, i’in değeri 50 olduğunda döngüden çıkılmaktadır. 

protected void Page_Load(object sender, EventArgs e)
{
for(int i=0; i<=100 ; i++)
{
if (i == 50) break;
Response.Write(i + ” “);
}
}

Örnek: Aşağıdaki uygulamada döngü içinde 20 ile 30 arasında sayıların yazılmamasını sağlayalım.

protected void Page_Load(object sender, EventArgs e)

{
for(int i=0; i<=100 ; i++)
{
if ((i >= 20)&&(i<=30)) continue;
Response.Write(i + ” “);
}
}

Please follow and like us:
0

Bir cevap yazın

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