PHP for Döngüsü

Eğer bir işi birden fazla kez yapacaksak döngülere ihtiyacımız olacak. Döngüler bir işlemi art arta tekrar edebilir. Aşağıda for döngüsünün yapısını gösterdim.

<?php
for(BAŞLANGIÇ; KOŞUL; İŞLEM){
    YAPILACAK İŞLEMLER
}
?>

Yukarıda for döngüsünün basit yapısını gösterdim. for döngüsünü kullanabilmek için bir başlangıç değerimiz, bitiş değerimiz ve yapacağımız bir işlem olması gerekiyor. for döngüsü diğer döngülere göre biraz karmaşıktır. Döngülerde KOŞUL FALSE olana kadar yapılır. Eğer FALSE ise döngü sonlandırılır. Örnek olarak 5 kere adımızı döngü kullanmadan yazalım.

<?php
echo "Umut Tepe<br>";
echo "Umut Tepe<br>";
echo "Umut Tepe<br>";
echo "Umut Tepe<br>";
echo "Umut Tepe<br>";
?>

Bu şekilde yazmak kolay ama eğer 100 kere yazmamız istenseydi ne yapacaktık? Teker teker yazacak değiliz. Döngüler işimizi kolaylaştırmak için yapılmışlar.

Kodu yazmadan önce nasıl yapacağımızı düşünelim. Öncelikle bizim işi kaç kere yaptığımızı öğrenmek için bir değişkene ihtiyacımız var. Bu değişkene istediğiniz ismi verebilirsiniz. Genelde “i” kullanılır. Sonra bir bitiş koşuluna ihtiyacımız var ki döngüyü durduralım. Biz bu işlemi 100 kere yapacağız. O yüzden bitiş koşulumuz 2 türlü olabilir. 100’e eşit değil mi diye kontrol ederiz eğer 100’e eşit ise FALSE bir değer dönecek ve döngüden çıkacak veya 100’den küçük ve eşit mi diye kontrol ederiz eğer 100’den büyük bir değer olduğu zaman FALSE bir değer dönecek ve döngüden çıkacak. Yapacağımız işlem ise birer birer arttırma işlemi olacak.

<?php
for($i=1; $i<=100; $i++){
    echo "Umut Tepe<br>";
}
?>

Yukarıdaki kodu çalıştırdığımızda 100 kere alt alta “Umut Tepe” yazdığını göreceksiniz. Kodun nasıl işlediğine bakalım.

Önce “$i=1” ifadesi çalıştırılır. Bu sadece 1 kere çalıştırılır. Daha sonra “$i<=100” ifadesi çalıştırılır ve dönen sonuç TRUE mu diye bakılır. Eğer FALSE ise döngüden çıkılır. Daha sonra işlem yapılır. “$i++” işlemi yapılır. Tek tekrarlama da “$i<=100” ve “$i++” çalıştırılır. Başlangıç değerimiz olan “$i=1” sadece 1 kere çalıştırılır. for döngüsünde genelde arttırma veya azaltma işlemi yapılır.

Eğer yapacağımız işlem tek satırlık ise bizim yukarıda yaptığımız örnek gibi süslü parantezleri kullanmayabiliriz.

Başka bir örnek daha yapalım. Sayının faktöriyelini bulalım.

Yapacağımız işlem belli faktöriyeli 2 şekilde bulabiliriz. Ya sayıyı arttırarak yapacağız ya da azalttırarak ben ikisini de yapacağım.

<?php
$sayi = 6;
$sonuc = 1;
for($i=1; $i<=$sayi; $i++)
    $sonuc *= $i;
for($i=$sayi; $i>0; $i--)
    $sonuc *= $i;
echo $sonuc;
?>

İki kodu çalıştırdığımızda aynı sonucu göreceğiz.

Örnek: HTML başlık etiketlerini küçükten büyüğe doğru yazalım.

<?php
for($i=1; $i<=6; $i++){
    echo "<h".$i.">Merhaba<h".$i."><br>";
}
?>

Örnek: 1’den 100’e kadar olan sayıları toplamını bulalım.

<?php
$toplam=0;
for($i=1; $i<=100; $i++)
    $toplam += $i;
echo $toplam;
?>

Toplamın sonucu 5050 olacaktır.

Örnek: 3’ten 7’ye kadar olan sayıların karelerinin toplamını bulalım.

<?php
$toplam = 0;
for($i=3; $i<=7; $i++)
    $toplam += pow($i,2);
echo $toplam;
?>

Toplamın sonucu 135 olacaktır.

Örnek: 1 ile 100 arasında 5 ve 7’nin katı olan sayıları bulalım.

<?php
for($i=1; $i<100; $i++){
	if($i%5==0 && $i%7==0)
		echo $i."<br>";
}
?>

Çıktımız: 35 ve 70 olacak.

Örnek: Çarpım tablosunu yapalım.

<?php
for($i=1; $i<=10; $i++){
	for($j=1; $j<=10; $j++){
		echo "$i x $j = ".$i*$j."<br>";
	}
	echo "<br>";
}
?>

Çıktımız:
1×1 = 1
1×2 = 2

devam edecek.

Örnek: 1’den başlayarak 100’e kadar tek sayıları yazdıralım.

<?php
for($i=1; $i<100; $i++){
    if(pow(-1,$i) == -1){
        echo $i."<br>";
    }
}
?>

Çıktımız:
1
3
5

97
99
diye devam edecek.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir