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!!!
>