Php Ders 4 - Döngüler

Kategori : Php Dersleri

Php ile döngüler: For, Do, While


Bu ders sonunda php ile döngüleri kullanabileceksiniz.

 

Döngüler tekrar eden işlemleri yapmakta kullanılır. Başlangıçta anlamsız gelebilir ama 100 üyeli bir web sayfanız varsa hepsinin adını tek tek yazmak yerine döngü kullanarak üç satırda işinizi bitirebilirsiniz.

Daha basit olduğu için FOR döngüsü ile başlayacağız. For döngüsü verilen artırma değerine göre döner. Dönerken aradaki işlemleri tekrar tekrar yapar. yazılması şu şekildedir.

for( $değişken ; dönme şartı ; her dönüşte yapılacak işlem)


$değişken: dönmeye ilk başladığı anda bir değişken üretmeyi sağlar

dönme şartı: Buradaki şart aslında bir IF komutudur. sorulan soru doğru ise dönmeye devam eder.

her dönüşte yapılacak işlem: Dönme sırasında herzaman birer birer arttırmak zorunda değilsiniz. bu işlemi değiştirip üçer üçer veya beşer beşer saydırabilirsiniz.

 

for
Örnek:

 


for ( $say=1 ; $say < 100 ; $say++ )
{

print " şu anda $say sayısındayım";

}

 

bu komutu çalıştırdığınızda. şöyle bir sonuç çıkar:

şu anda 1 sayısındayım
şu anda 2 sayısındayım
şu anda 3 sayısındayım
şu anda 4 sayısındayım
....

Bu şekilde 99 kere devam eder. verilen şart $say <100 olduğu için $say==100 olduğunda dönme sona erer.


Başka bir örnek: Tek sayıları yazdıralım


for ( $say=1 ; $say < 100 ; $say=$say +2 )
{

print " Tek sayılar: $say ";

}

 

While Döngüsü

While döngüsü üsttekinin biraz daha sade halidir. Fakat sadece sayılar için kullanılmaz. While döngüsü tek bir şarta bağlı olduğu için dikkatli kullanmak gerekir.

Yazılışı:

While (Soru)
{
// Soru doğru ise yapılacak işlem

}

 

örnek: $civciv örneğini tekrar yapalım.

 

while($civciv=="")
{
print " Açım, Çok acıktııım";
}

 

Bu örneği çalıştırdığınızda ekrana bir milyon kere Açım yazdığını göreceksiniz. Sebebi ise $civciv´in hiçbir zaman içi dolmuyor ve While her dönüşünde aynı soruyu soruyor, cevap Evet ise dönmeye devam ediyor.

Yukarıdaki örneği aşağıdaki şekilde değiştirdiğimizde ise sadece 10 kere dönecektir.

 

while($civciv < 10)
{
print " Açım, Çok acıktııım";

$civciv = $civciv + 1 ;
}

 

Bu örnekteki en önemli kısım aslında $civciv = $civciv + 1 satırıdır, Eğer bunu anlayabiliyorsanız programlama sizin için tamam demektir.

Şimdi bu kısma dikkatle okuyalım:

Programlama yaparken bilgisayar eşitliğin sağındaki işlemi yapar ve sol tarafa aktarır. Sağ taraftaki değişken yapılan işlemden etkilenmez.

Bu işlem sonunda $ciciv bir sayı arttırılmış olur. Diyelim ki: $civciv=5 bu işlemden sonra $civciv=6 olmuştur.

Ödev: Bu kısmı iyice düşünün ve 10 kere okuyun. Bunu çözerseniz programcı olmanın en zor kısmını geçtiniz demektir.

 

 

Soru: Aşağıdaki kodun sonucu kaç yazar.

$say=6;
$kutu= 3;

while($say < 100)
{

$kutu= 10 ;

$say = $say + $kutu;

}

print " $say ";

drekon 2009-12-24 12:04:11

DMCA.com
Bookmark and Share
Hit:129426
Puan ver:

mzyil Hilem Zıdlıy

smiley

106

smiley

21-01-2010 19:15

    cevap

    evet doğru 106 altı yanlışlık yapmışım

    24-01-2010 18:03

      R.Kaya Ramazan KAYA

      Şimdi Hocam şöylemi oluyo php bilgim 0 olduğu için sorma gereksinimi duydum anlatım tarzı bakımındna mükemmel anlatıyosuuz öncelikle bunu söyliyim.

      şimdi üstte iki tane değişken var

      $say=6;

      $say=3; diye

      bunların sadece birini aşaıya çağırıyo oda $say değişkeni

      while($say < 100) burda ´´6´´ dan 100 e kadar say diyor arada 96 Sayı olucak daha sonra bir aşağıda bir değişken daha 

      $kutu= 10 ; şimdi yeni bir kutu geldiği için yukardaki kutuyu görmüyoruz bundan önceki derste öyle anlatmıştın

      sonra değişkeneri topluyoruz

      $say = $say + $kutu; yane $say 96 çıkmıştı $kutu da 10 bu durumda 106 $say oluyor

      aşağıyada yazdır

      print " $say "; 106 böylemi  yoksa ben yanlış başka bir yöntemlemi buldum ?

       

      02-02-2010 10:18

        ergungorler Ergün GÜNGÖRLER
        Yazan:R.Kaya

         

        Şimdi Hocam şöylemi oluyo php bilgim 0 olduğu için sorma gereksinimi duydum anlatım tarzı bakımındna mükemmel anlatıyosuuz öncelikle bunu söyliyim.

        şimdi üstte iki tane değişken var

        $say=6;

        $say=3; diye

        bunların sadece birini aşaıya çağırıyo oda $say değişkeni

         

        while($say < 100) burda ´´6´´ dan 100 e kadar say diyor arada 96 Sayı olucak daha sonra bir aşağıda bir değişken daha 

        $kutu= 10 ; şimdi yeni bir kutu geldiği için yukardaki kutuyu görmüyoruz bundan önceki derste öyle anlatmıştın

        sonra değişkeneri topluyoruz

        $say = $say + $kutu; yane $say 96 çıkmıştı $kutu da 10 bu durumda 106 $say oluyor

        aşağıyada yazdır

        print " $say "; 106 böylemi  yoksa ben yanlış başka bir yöntemlemi buldum ?

         

         

        Hocam php bilgim yok ama uzun zamandan beri fortranla programlama yapıyorum ve çok da farklı gelmedi açıkcası. Benim anladığım olay şu şekilde:

        $say değişkenimiz için ilk olarak 6 değeri atanıyor. Bu değer while döngüsünün $say<100 şartını sağladığı için döngüye 6 değeri ile başlıyor. Ancak döngünün içerisinde $kutu değişkeninin önceden 3 olan değeri 10 olarak değiştiriliyor. Yani 3 değeri uçtu gitti artık yok :)

        $say=$say+$kutu eşitliğinde de ilk döngüde $say=6+10=16 oluyor.

        Sonraki döngülerde de $say değişkeni sırasıyla 26(16+10), 36,46,56,66,76,86,96 ve 106 oluyor. 106 değeri için 106<100 koşulu sağlanmadığından while döngüsü sona eriyor ve print komutu da $say değişkeninin son değeri olan 106´yı sonuç olarak veriyor. Umarım yardımcı olabilmişimdir.

        03-02-2010 21:30

          Uğur Alver ugur alver Avatar

          110 olması gerekmiomu hocam cevap verirseniz sevinirim

          04-02-2010 13:07

            nikoystar Yuri.... Avatar

            mod cvp bekliyoruz ben bu odevi anlıyamadım

            05-02-2010 02:26

              mod olmasamda

              g.a.g-mmy muhammed fatih geçkil

              tiyo büyük bir zattan :D kesinlikle cevap 106 :D biz biliyorum :D

              07-02-2010 02:05

                While Döngüsü kullanımı

                nssasmaz Nursin Şaşmaz Avatar

                Arkadaşlar şöyle açıklayayım.

                $say=6;
                $kutu= 3;


                while($say < 100) {

                $kutu= 10 ;

                $say = $say + $kutu;

                }

                print " $say ";

                Çıktı Olarak Şu Şekildedir.. :

                 

                |- $say -|- $kutu |
                -------------------
                Döngüden Önce :
                |--  6  --|-- 3  --|
                Döngü Başlayınca :
                |-- 16 --|-- 10 --|
                |-- 26 --|-- 10 --|
                |-- 36 --|-- 10 --|
                |-- 46 --|-- 10 --|
                |-- 56 --|-- 10 --|
                |-- 66 --|-- 10 --|
                |-- 76 --|-- 10 --|
                |-- 86 --|-- 10 --|
                |-- 96 --|-- 10 --|

                Toplam ( Yani print " $say ";) : 106

                gördüğünüz üzere $say 6 değerinden başladı ve en son verilen değer 96 oldu fakat döngü her döndüğünde değer 10 artığı için ve bir defa daha artarsa 100 ü geçeceğinden dolayı son değerde 96 + 10 = 106; oldu..

                 

                 

                ! : UNUTMAYINIZ : !

                $kutu değişkeni yukarıda ne kadar 3 olarak tanımlanırsa tanımlansın işleme
                ( $say = $say + $kutu; ) girmeden önce değiştiğini unutmayınız.


                Teşekkürler..

                Gitme vakti gelince gitmek mi zordur kalmak mı?
                07-02-2010 02:28 Edit:07-02-2010 02:30

                  g.a.g-mmy muhammed fatih geçkil

                  vay bea helal olsun müthiş tercüme :D

                  07-02-2010 02:45

                    www.Phpkodlari.com © 2009 Herkes Php öğrenecek
                    Web tasarım ve eğitim kaynağınız.