C# While Döngüsü
Bir şarta bağlı olarak bazı işlemlerin tekrar etmesini istiyorsak while döngüsünü kullanabiliriz. While döngüsünün ilk satırında bir şart belirtilir. Bu şart sağlandığı sürece yapılmasını istediğimiz işlemleri döngünün içine yazarız.
For döngüsü kullanırken, döngünün kaç kez döneceği baştan bilinmekte, en azından tahmin edilebilmektedir.
While döngüsü ise döngünün kaç kez döneceğinin tahmin edilemediği durumlarda tercih edilir. En başta belirtilen şart tutmaz ise döngü hiç dönmeyebilir, tutması halindeyse defalarca dönebilir.
while ( şartımız )
{
şart tuttuğu sürece tekrarlanacak işlemler...
}
For döngüsündeki gibi bir sayaç tutulup arttırılmaz. Sayaç gibi sürekli artan veya azalan bir değişkene ihtiyacımız varsa bunu kendimiz tanımlamalı ve artırma/azaltma işini de kendimiz yapmalıyız.
Ayrıca döngünün bir yerde mutlaka bitecek şekilde tasarlanması gerekir. Yani yazdığımız şartı öyle belirlemeliyiz ki bir yerde şart gerçekleşmesin ve döngü sona ersin. Aksi halde sonsuz döngüye girilir.
While Döngüsü Örnek
Kullanıcı 0 girinceye kadar sayı istemeye devam eden, girilen sayıları toplama ekleyen, 0 girdiğinde döngüyü sonlandırıp toplamı ekrana yazan program:
int toplam=0, sayi=1;
while (sayi != 0)
{
sayi = int.Parse(Console.ReadLine());
toplam += sayi;
}
Console.WriteLine(toplam);
Console.ReadKey();
Burada sayi değişkenine başlangıçta 0
'dan farklı bir değer vermemizin sebebi döngüye gelindiğinde boş bir değişkenle işlem yapılıp hata oluşmasının önüne geçmektir. Döngüye girer girmez kullanıcının girdiği sayı sayi değişkenine alındığı için ilk değerin bir önemi yoktur.
While döngüsü ile yaptığımız bu örnek do-while döngüsü ile çözülmeye daha uygundur aslında. Do-while ile yapılmış çözümü görmek için tıklayınız.
C# console While Döngüsü örnekleri, while döngüsü kullanımı, console while döngüsü ile for döngüsünün farkı
KONU İLE İLGİLİ ÖRNEKLER
Kullanıcının girdiği sayıların toplamı 100'den küçük olduğu sürece sayı istemeye devam eden, sonunda kaç deneme yapıldığını ve toplamı ekrana yazan program:
int toplam=0, sayi, sayac=0;
while (toplam < 100)
{
Console.Write("Sayı: ");
sayi = int.Parse(Console.ReadLine());
toplam += sayi;
sayac++;
}
Console.WriteLine(sayac+ ".deneme sonunda toplam= " + toplam);
Console.ReadKey();
While döngüsü ve sayaç kullanma örneği
|
|
Kullanıcıdan 10 defa sayı isteyen ve bu sayıları toplayan programı while döngüsü ile yazalım:
int toplam=0, sayi, sayac=0;
while (sayac < 10)
{
Console.Write("Sayı: ");
sayi = int.Parse(Console.ReadLine());
toplam += sayi;
sayac++;
}
Console.WriteLine(toplam);
Console.ReadKey();
32666 kez okundu.