Meydan okuma - Dizi işlemleri
İlişkisel dizi, foreach ve dizi metotlarıyla öğrenci not panosu yazarsın.
Meydan okuma - Dizi işlemleri
Bu meydan okumada bir öğrenci not panosu yazacaksın. İki sınıfın notlarını ilişkisel dizi olarak tutacak, array_merge ile birleştirecek ve foreach ile her öğrencinin ortalamasını hesaplayıp ekrana yazdıracaksın.
Her öğrencinin değeri bir not dizisidir; iç içe foreach ile notları toplayıp count ile bölersin. Bu, ilişkisel dizi, döngü ve aritmetik bilgini birlikte kullanır.
Uygulama Not panosunu yaz
$grades1 ilişkisel dizisine "Ayşe" => [80, 90, 100] ve "Mehmet" => [70, 80, 90] ekle. $grades2 dizisine "Zeynep" => [90, 100, 95] ekle. $all = array_merge($grades1, $grades2) ile birleştir. Dış foreach ($all as $name => $scores) ile her öğrenciyi gez; iç foreach ($scores as $score) ile notları topla; $avg = $total / count($scores) hesapla; echo $name . ": " . $avg . "\n" yazdır.
Örnek çözümü göster
$grades1 ve $grades2 ilişkisel dizilerini tanımla; array_merge ile birleştir; dış foreach anahtar değerle, iç foreach notlarla döner; ortalama = toplam / count.
Örnek çözüm:
<?php
// Öğrenci not panosu: array_merge ve iki foreach
$grades1 = [
"Ayşe" => [80, 90, 100],
"Mehmet" => [70, 80, 90],
];
$grades2 = [
"Zeynep" => [90, 100, 95],
];
$all = array_merge($grades1, $grades2);
foreach ($all as $name => $scores) {
$total = 0;
foreach ($scores as $score) {
$total += $score;
}
$avg = $total / count($scores);
echo $name . ": " . $avg . "\n";
}
Kendini test et
-
array_merge($a, $b) ilişkisel dizilerde nasıl davranır?
- Ortak anahtarları siler
- Ortak anahtarların değerini birleştirir
- Ortak anahtarlarda ikinci dizinin değeri kalır
- İlişkisel dizileri birleştirmez
Cevabı göster
Ortak anahtarlarda ikinci dizinin değeri kalır — Doğru. array_merge'te aynı dize anahtar varsa ikinci dizinin değeri birincinin üzerine yazar.
-
Dış döngüyü tamamla
foreach ($all ____ $name => $scores) { // iç döngü ve ortalama hesabı }Cevabı göster
foreach ($all as $name => $scores) { // iç döngü ve ortalama hesabı } -
Dizi kavramlarını eşle
- array_merge
- dizileri birleştirir
- foreach
- diziyi gezer
- count
- eleman sayısı
- $scores as $score
- iç döngü