1.FOR DÖNGÜSÜ
For loop adı üzerinde döngü, sınırlarında barındırdığı kodların belli koşullar altında tekrar tekrar dönmesini sağlar.
yapısı
for( statement1 ; statement2 ; stamenet3 )
{ … }
şeklindedir. While ile ayni işi yapmakla birlikte bize while’a göre daha derli toplu bir yapı sunar.
statement1 = başlangıc durumu
statement2 = döngünün doğru oldugu sürece çalışmaya devam edeceği koşul
statement3 = degisim miktari
Örn : for(int i=0; i<=4 ;i++ )
{ Console.WriteLine(i +” .Merhaba”); }
başlangıç durumu => i = 0
çalışmaya devam koşulu => i<=4
degisim miktari => i++
* yukaridaki kodun insan diline tercümesi “i”yi 0dan başlat ve birer birer artir. i 4’ten kücük esit olduğu sürece kodu tekrar tekrar çalıştır.Her bir artirmada süslü parantezlerdeki kodu tekrar çalıştırıp sonunda koşulu tekrar kontrol edecektir. Yani ekrana 5 defa Merhaba yazacaktir.
Örn : for ( int i = 100; i >= 1; i– )
{ //calisacak kodlar }
* i’yi 100den başlat her seferinde 1 azalt ve i 1den büyük eşit oldugu sürece döngüdeki kodlari tekrar tekrar çalıştır.
Örn : for ( int i = 7; i <= 77; i += 7 )
{ //calisacak kodlar }
*i’yi 7den başlat her seferinde 7 artir ve i 77den küçük eşit olduğu sürece döngüdeki kodlari tekrar tekrar çalıştır.
Örn : for ( int j = 99; j >= 0; j -= 11)
{ //calisacak kodlar }
*j’yi 99dan başlat her seferinde 11 azalt ve j 0dan büyük eşit olduğu sürece döngüdeki kodlari tekrar tekrar çalıştır.
2.WHİLE DÖNGÜSÜ
While döngüsü isminden de anlaşılacağı üzere kodun belirli koşullar altında tekrar tekrar dönerek çalışmasını sağlar yani bir döngüdür. Yapısı ise
While( KOSUL)
{
//Çalıştırılacak kod
}
şeklindedir. Koşul ifadesinin doğruluğu sağlandığı sürece döngü içerisindeki kodlar tekrar tekrar çalışır. Ancak burada dikkatinizi çekmesi gereken bir şey var. Döngüden çıkış şartı. Yani koşul sağlanır döngü tekrar tekrar dönerken, bir süre sonra koşul yanlışlanmaz ise sonsuz döngüye girer. Bu sebeple bir de döngüden çıkış durumuna ihtiyacımız var. Bunu da döngünün kodları arasında tanımlamalıyız.
* Aşağıdaki while döngüsünde döngü i 5ten küçük veya eşit olduğu sürece dönecektir. Bu döngüden çıkılmasını sağlayan durum ise döngü her dönüşünde i’nin 1 artmasıdır.
int i=0; while(i<=5) { Console.WriteLine(i + ". dönüş"); i++; }
* Bir diğer while döngüsü örneği ; while kullanarak faktoriyel hesaplama.
int i=1; int faktoriyel=Convert.toInt32(Console.ReadLine()); while(i<=faktoriyel) { faktoriyel=faktoriyel*i; i++; } Console.WriteLine("sayinin faktoriyeli" + faktoriyel);
Genel kullanım olarak iki tip while vardır. Bu while’lar döngüden çıkış şekline göre ayrılır.
- Sayıcı kontrollü while
- Kullanıcı kontrollü while
1. SAYICI KONTROLLU WHİLE DÖNGÜSÜ
Sayıcı kontrollü döngülerde döngüden çıkış koşulu sayıcının değerine bağlıdır.
int i=0; while(i<=5) { Console.WriteLine(i + ". dönüş"); i++; }
2. KULLANICI KONTROLLU WHİLE DÖNGÜSÜ
Kullanıcı kontrollü döngülerde döngüden çıkış koşulu kullanıcının girdiği değere bağlıdır. Aşağıda kullanıcı 0 girerse döngüden çıkılacağı şartı konmuştur.
int sayi; Console.WriteLine("Bir sayi giriniz"); sayi = Convert.ToInt32(Console.ReadLine()); while (sayi != 0) { Console.WriteLine("Bir sayi giriniz"); sayi = Convert.ToInt32(Console.ReadLine()); }