C Programlama Dili - While Döngüsü (While Loop)

C Programlama Dili - While Döngüsü (While Loop)

C Programlama Dili - While Döngüsü (While Loop)

Yazılan şart sağlandığı süre boyunca içindeki komutları çalıştıran döngü çeşitidir. Kullanım şekli;

while (koşul) 
{
    //komut 1
    //komut 2
    //...
}

Yukarıdaki örnekte koşul kısmı doğru (true) olduğu sürece döngü içindeki komutları sürekli tekrar tekrar işleyecektir. "koşul" un yanlış (false) olması durumunda döngüden çıkıp döngüden sonraki komutları işlemeye geçecektir.

Örnek1 : Aşağıdaki örnekte döngü, i değişkeni 10'dan küçük olduğu sürece içindeki komutları işlemeye devam edecektir. i değişkeni 0 olduğu için döngü sürekli dönecektir (istenmeyen durum).

i=0;
while (i<10)
{
}

Bu yüzden i değişkenin belli bir süre sonra (ihtiyacımıza göre) değiştirmemiz gerekecektir. Aşağıdaki örnekte olduğu gibi i değişkenini döngü her döndüğünde birer birer artırısak i 11 olduğunda döngü koşulu sağlamadığı için duracaktır.

i=0;

while (i<10)

{
	i++;
}
=
i=0;

while (i++<10)

{

}

Döngüleri istediğimiz zaman durdurmak için break komutunu kullanırız. Döngü içinde break komutunu çalıştırdığımız zaman döngü durur ve program döngüden sonraki komutları işlemeye devam eder.

i=0;
while (i<10)
{
	i++;
	if(i==5) break;
}
Yandaki örnekte döngü i değişkeni 10 olana kadar dönecekti fakat if komutu ile i değişkeni 5'e eşit olunca break komutunu çalıştır dediğimiz için i değişkeni 5'e eşit olduğu zaman döngü duracaktır.

Örnekler:

 

#include
main()
{
int sayi;
int yazilacak_rakam;
printf("Sayiyi giriniz = ");
scanf("%d",&sayi);
printf("Sayiyinin ters yazilisi = ");
while( sayi>10 )
{
 yazilacak_rakam = sayi % 10;
 printf("%d",yazilacak_rakam);
 sayi = sayi / 10;
}
printf("%d",sayi);
}

Çıktı:

 

Sayiyi giriniz = 123456

Sayiyinin ters yazilisi = 654321

 

#include 

main()

{

int x,y,sayac=0;

printf("Birinci sayiyi gir: ");

scanf("%d",&x);

printf("Ikinci sayiyi gir: ");

scanf("%d",&y);

while (x>=y)

{

 x=x-y;

 sayac=sayac+1;

}

printf("Bolum = %d",sayac);

printf("\nKalan = %d",x);

}

Çıktı:

 

Birinci sayiyi gir: 30

Ikinci sayiyi gir : 4

Bolum = 7

Kalan = 2