For Döngüsü ile İlgili Örnekler


Soru: 1 ile 100 arasındaki sayılardan hem 3'e hem de 7'ye tam bölünen sayıları ve bu sayıların toplamını ekrana yazdırınız.

Bu sorunun çözümünde mod(%) operatörünü kullanıyoruz, örenğin mod 3'e bölümden kalan 0 ise sayı tam olarak 3'e bölünüyordur. Hem 3'e hem de 7'ye bölünebilmeyi if ($i%3==0 && $i%7==0) şart satırı ile sağlayabiliriz. Bu satır aslında C, C++, Java ve JavaScript dillerinde de aynı şekilde yazılır. Bu dillerden gelenler hemen kavrayacaklardır. 

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

21
42
63
84

Toplam sonucu:210


Soru: 1'den 100'e kadar olan sayılardan 3'e bölünenlerin toplamını ve 5'e bölünenlerin toplamını bulup, farkını ekrana yazdırınız.

<?php
$toplamUc=0;
$toplamBes=0;
 
for($i=1; $i<=100;$i++)
{
     if ($i%3==0)
     $toplamUc+=$i;
 
     if ($i%5==0)
     $toplamBes+=$i;
 
}
 
echo "Üçe bölünenler toplam sonucu:".$toplamUc."<br>";
echo "Beşe bölünenler toplam sonucu:".$toplamBes."<br>";
echo "Fark :".($toplamBes-$toplamUc);
 
?>


Soru: 1/1 + 1/2 + 1/3 + ... + 1/n toplamını bulunuz. 

Burada n değeri 2 iken sonuç 1.5, n değeri 3 iken 1.8333333333333 olacaktır. 

Dikkat ederseniz sadece paydadaki sayılar 1 artarak gidiyor, buna göre çözümü aşağıdaki gibi yapabiliriz. 

<?php
 
$n=3;
$toplam=0;
 
for($i=1;$i<=$n;$i++)
{
    $toplam+=1/$i;
}
echo $toplam;
 
?>

Soru : 1/1! + 1/2! + 1/3! + ... + 1/n! toplamını bulunuz.

<?php
$n=5;
$toplam=0;

for($i=1;$i<=$n;$i++)
{
    $fakt=1;
    for ($j=1;$j<=$i; $j++)
       $fakt*=$j;

     echo "$i faktöriyeli :".$fakt."<br>";
     $toplam+=$fakt;
}

echo "İşlem sonucu:".$toplam;

?>

Ekran görüntüsü aşağıdaki gibi olacaktır.

1 faktöriyeli :1
2 faktöriyeli :2
3 faktöriyeli :6
4 faktöriyeli :24
5 faktöriyeli :120
İşlem sonucu:153

 
Mutlu kodlamalar,
Oğuzhan TAŞ
Ekim, 2016

Bookmark and Share