while döngüsü nasıl kullanılır?

While döngüsü

While döngüsünün koşul olayı if ifadesi ile aynı diyebiliriz. İçerisine yazacağımız koşul doğru olduğunda kod bloğunu çalıştıran if ifadesinde olduğu gibi whilede aynı şeyi yapar. Tek farkı döngü olduğu için koşul doğru olduğu sürece tekrarlar.

 

while( koşul ) {
 // koşul olumlu olduğu sürece çalışacak kod bloğu
}

While döngüsünde sonsuz döngüye girmek çok kolay, bu yüzden kodlarken biraz dikkatli olmak lazım. Eğer koşul her zaman doğru olacak şekilde olursa while de hiç durmadan döner.

$sayi = 10;
while($sayi == 10) {
   echo 'sayi değişkeni 10 olduğu sürece bu yazı hep yazılacak';
}
 

Yukarıdaki örnek sonsuz döngüye girer, yani hatalıdır. Koşula $sayi değişkeni 10′a eşit olduğu sürece kod bloğunu ard arda çalıştır dedik. Döngüden önce $sayi değişkenine 10 değerini verdiğimiz için ve değerini hiç değiştirmediğimiz için döngü sonuza kadar döner.

Peki nasıl sınırlı ve kontrollü bir döngü yapacağız? Bu sorunun cevabıda gayet basit. Eğer döngü boyunca koşula yazdığımız değerlerin değişmesini sağlarsak döngüde belli bir dönüşten sonra durur. Hemen buna da bir örnek gösterelim.

$sayi = 0;
while($sayi < 5) {
   echo ' Döngü ' . $sayi;
   $sayi++;
}

Ekranda Döngü 0 Döngü 1 Döngü 2 Döngü 3 Döngü 4 yazar ve durur. Önce $sayi adında değişken oluşturup 0 değerini verdik, while döngümüzün koşulunada $sayi değişkeni 5 den küçük olduğu sürece dön dedik, kod bloğunun içerisine ise echo ile bir çıktı verdirdik ve hemen sonrasında $sayi değişkeninin değerini 1 arttırdık. Bu sayede her çalışmasında değer 1 artacak ve5. çalışmasında duracaktır.

While için son örnek olarak birde matematiksel hesap yaptıralım:

 
$sayi = 1;
$sonuc = 1;
 
while($sayi < 10) {
   $sonuc = $sonuc * $sayi;
   $sayi++;
}
 
echo $sonuc;

Ekranda 362880 yazar. Burada $sonuc değişkenini her döngüde 1 arttırarak çarptık. Yani ilk olarak 1*1 sonrasında 1*2, sonra 2 * 3 … şeklinde sayı 10 dan küçük olana kadar çarptık.

Görüş Hata Bildir

Güvenlik Kodunuz:

Yorum Yap

Yorum kodunuz:

0.0637