Heim >Backend-Entwicklung >PHP-Problem >PHP ermittelt den Durchschnitt von drei Array-Stapeln

PHP ermittelt den Durchschnitt von drei Array-Stapeln

WBOY
WBOYOriginal
2023-05-07 17:32:09498Durchsuche

Bei der PHP-Programmierung ist es oft notwendig, mit Arrays zu arbeiten, und das Ermitteln des Durchschnitts von drei Array-Stapeln ist ein häufiges Problem. Dieser Artikel befasst sich mit diesem Problem, indem drei verschiedene Methoden vorgestellt werden.

Methode 1: Verwendung der for-Schleife und der Array-Summationsfunktion

Die gebräuchlichste Methode zur Mittelwertbildung besteht darin, eine for-Schleife zum Durchlaufen des Arrays zu verwenden und die Array-Summationsfunktion dazu zu verwenden Summe aller Arrays Die Elemente werden addiert und schließlich durch die Anzahl der Elemente dividiert, um den Durchschnittswert zu erhalten.

Der Beispielcode lautet wie folgt:

$arr1 = array(1, 2, 3, 4, 5);
$arr2 = array(6, 7, 8, 9, 10);
$arr3 = array(11, 12, 13, 14, 15);

$sum1 = 0;
$sum2 = 0;
$sum3 = 0;

$count = count($arr1);

for ($i = 0; $i < $count; $i++) {
    $sum1 += $arr1[$i];
    $sum2 += $arr2[$i];
    $sum3 += $arr3[$i];
}

$avg1 = $sum1 / $count;
$avg2 = $sum2 / $count;
$avg3 = $sum3 / $count;

echo '第一堆平均数:' . $avg1 . '<br />';
echo '第二堆平均数:' . $avg2 . '<br />';
echo '第三堆平均数:' . $avg3 . '<br />';

Obwohl diese Methode einfach ist, erfordert sie eine for-Schleife zum Durchlaufen des Arrays, was sich auf die Programmeffizienz auswirkt, wenn es viele gibt Array-Elemente.

Methode 2: Verwenden Sie die Funktionen array_sum() und count()

PHP bietet die Funktion array_sum(), um das Array direkt zu summieren, und mit der Funktion count ist das möglich schnell den Durchschnittswert ermitteln.

Der Beispielcode lautet wie folgt:

$arr1 = array(1, 2, 3, 4, 5);
$arr2 = array(6, 7, 8, 9, 10);
$arr3 = array(11, 12, 13, 14, 15);

$sum1 = array_sum($arr1);
$sum2 = array_sum($arr2);
$sum3 = array_sum($arr3);

$count = count($arr1);

$avg1 = $sum1 / $count;
$avg2 = $sum2 / $count;
$avg3 = $sum3 / $count;

echo '第一堆平均数:' . $avg1 . '<br />';
echo '第二堆平均数:' . $avg2 . '<br />';
echo '第三堆平均数:' . $avg3 . '<br />';

Diese Methode ist einfach und effizient und macht eine for-Schleife zum Durchlaufen des Arrays überflüssig.

Methode 3: Verwenden Sie die Funktionen array_map() und array_reduce()

Zusätzlich zu den Funktionen array_sum() und count() bietet PHP auch array_map() und array_reduce() Funktionen können flexibler mit Arrays arbeiten.

Der Beispielcode lautet wie folgt:

$arr1 = array(1, 2, 3, 4, 5);
$arr2 = array(6, 7, 8, 9, 10);
$arr3 = array(11, 12, 13, 14, 15);

$sum1 = array_reduce($arr1, function($carry, $item) {
    return $carry + $item;
});

$sum2 = array_reduce($arr2, function($carry, $item) {
    return $carry + $item;
});

$sum3 = array_reduce($arr3, function($carry, $item) {
    return $carry + $item;
});

$count = count($arr1);

$avg1 = $sum1 / $count;
$avg2 = $sum2 / $count;
$avg3 = $sum3 / $count;

echo '第一堆平均数:' . $avg1 . '<br />';
echo '第二堆平均数:' . $avg2 . '<br />';
echo '第三堆平均数:' . $avg3 . '<br />';

Diese Methode verwendet eine anonyme Funktion als zweiten Parameter von array_reduce(), was flexiblere Summationsoperationen ermöglicht und ein for vermeidet Schleife.

Zusammenfassung

Die drei Methoden haben jeweils ihre eigenen Vor- und Nachteile, und die spezifische Verwendung muss entsprechend der tatsächlichen Situation ausgewählt werden. Methode 1 kann für kleine Arrays verwendet werden, und Methode 2 oder Methode 3 wird für größere Arrays empfohlen. Gleichzeitig ist zu beachten, dass beim Bearbeiten eines Arrays auf die Art und Anzahl der Array-Elemente geachtet werden muss, um unerwartete Situationen zu vermeiden.

Das obige ist der detaillierte Inhalt vonPHP ermittelt den Durchschnitt von drei Array-Stapeln. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn