DÖNGÜLER
 
While Döngüsü:
 
Koşul ifadesi doğru (true) ise blok içi uygulanır. Değilse blok dışına(sonrasına) çıkılır.
 
while ($sayi == 5) {
 
            print ("Sayı  5!\n");
    }
 
Yukarıdaki örnekte koşul ifadesi $sayı değişkeninin 5’e eşitliğini test ediyor. Eğer 5 ise (true) oklu parantez içine (bloğa) geçilerek icra
edilir. % değilse (false) blok dışına çıkılır.
 
Örnek Program : Program adı wh_dongu1.pl olsun.
 
#!/usr/local/bin/perl
$sayi = 0;
$sayac = 1;
print ("Bu satır döngü başlamadan evvel yazıldı.\n");
while ($sayi == 0) {
         print ("Dongu sayac değeri ", $sayac, "\n");
         if ($sayac == 3) {
               $sayi = 1;
                          }
      $sayac = $sayac + 1;
     }
print ("Döngüden çıktık.\n");
 
       
Çalışması :
 
>wh_dongu1
>Bu satır döngü başlamadan evvel yazıldı.
>Dongu sayac değeri 1
>Dongu sayac değeri 2
>Dongu sayac değeri 3
>Döngüden çıktık.
>
 
 
 
Until Döngüsü :
 
Genel formatı :
until (koşul ifadesi) {
       koşul ifadesi sonucu yanlış(true) ise
       blok içi uygulanır
       koşul doğru olunca blok dışına çıkılır
 }
 
Örnek Program : Program adı untilprg.pl olsun
 
#!/usr/local/bin/perl
print ("17 ARTI 26 SONUCU KACTIR.?\n");
$dogru_cevap = 43;     # Doğru cevap atandı
$girilen_deger = <STDIN>;
chop ($girilen_deger);
until ($girilen_deger == $dogru_cevap) {
       print ("Yanlis! Yeniden dene!\n");
        $girilen_deger = <STDIN>;
        chop ($girilen_deger);
 }
print ("Bravo..Dogru cevap!!!\n");
 
Çalışması :
>untilprg
>17 ARTI 26 SONUCU KACTIR.?
>39
>Yanlis! Yeniden dene!
>43
> Bravo..Dogru cevap!!!
>