Merhaba arkadşalar PHP'den bir ödevim var bana yardımcı olabilirseniz sevinirim..
Şimdi sorum şu:
Değerleri önceden girilen 10 elemanlı
tek boyutlu bir dizinin elemanlarını
toplayan ve ortalamasını alan php
kodunu yazınız.
Ø While deyimini kullanınız.
Yaptığm kodlar ise bunlar:
<?
$say[0]="15";
$say[1]="25";
$say[2]="30";
$say[3]="40";
$say[4]="55";
$say[5]="66";
$say[6]="70";
$say[7]="88";
$say[8]="96";
$say[9]="1004";
while($say[0])
{
$toplama = $say[0]+$say[1]+$say[2]+$say[3]+$say[4]+$say[5]+$say[6]+$say[7]+$say[8]+$say[9];
echo "Hepsinin Toplamı : ".$toplama."<br>";
$ortalama = $toplam/10;
echo "Ortalaması : ".$ortalama."<br>";
}
?>
ancak çalışmadı.. bana yardımcı olabilirmisiniz. ?
Teşekkürler.
While ile alakalı basit bir soru..
7
●3.456
- 26-10-2010, 21:36:01Kimlik doğrulama veya yönetimden onay bekliyor.
<?php $sayilar = array(); $sayilar[] = 52; $sayilar[] = 532; $sayilar[] = 987; $sayilar[] = 5678; $sayac = 0; $toplam = 0; while ($sayac < count($sayilar)) $toplam = $toplam + $sayilar[$sayac++]; $ortalama = $toplam / count($sayilar); echo 'Toplam: ' . $toplam . '<br />'; echo 'Ortalama: ' . $ortalama; ?>
- 26-10-2010, 22:11:50Üyeliği durdurulduhocam, while döngüsünü if else gibi bir koşul yapısı olarak düşünün. farkı ise; koşul gerçekleşiyorsa işlem yapılıyor ve tekrar koşula bakıyor. Eğer koşul hala geçerliyse işlemi tekrar yapıyor.
while(koşul){
işlem
}
Eğer işlem sırasında koşulu değiştirecek bir şey yapmazsanız programınız sonsuz döngüye girer.
<? $sira = 0; $toplam = 0; while ($sira < count($say)) { // burada count() fonksiyonu ile $say dizisindeki eleman sayısı sayılıyor ve sıra değişkeninden küçük ise işlem gerçekleşiyor. $toplam = ($toplam + $say[$sira]);//her dizi elemanı teker teker yazılmak yerine $say[$sira] olarak verilmiş. çünkü zaten $sira değişkeni döngü her döndüğünde artıyor. $sira++; // işlem sonunda sıra değişkeni 1 arttırılıyor. böylece işlem 10 defa yapıldığında, dizinizde 10 eleman olduğu için koşul sağlanmayacak ve döngüden çıkacak. } $ortalama = ($toplam / count($say)); echo 'Ortalama : ' . $ortalama; ?>Bu arada ben hocanın yerinde olsaydım, "0" olan dizi elemanlarını ortalama hesaplarken kullanmayan bir program karşısında etkilenirdim :P
- 27-10-2010, 12:13:25Üyeliği durdurulduDöngüyü kullanmadan once dongu hangi mantıkla calisir once ona bir bakalım.
while($kosul) {
// islem
}
$kosul degeri yanlis olana bloklar arasindaki islemi tekrarlar.
senin sorunun cevabina gelince. once 10 tane rastgele sayi bulalim
<?php $i = 0; $sayilar = array(); $toplam = 0; // rastgele sayilarida uygulamaya olusturttuk while($i <= 9 ) { $sayilar[$i] = rand(5,100); $i++; } // simdi hepsini toplatiyoruz $j = 0; while($j <= 9) { $toplam += $sayilar[$j]; $j++; } // ortalamayi al $ortalama = $toplam / 10; echo $ortalama; echo '<br />Üretilen Sayilar : <pre>'; print_r($sayilar); ?>