PHP trouve la moyenne de trois piles de tableaux

WBOY
Libérer: 2023-05-07 17:32:09
original
459 Les gens l'ont consulté

En programmation PHP, il est souvent nécessaire d'opérer sur des tableaux, et trouver la moyenne de trois piles de tableaux est un problème courant. Cet article abordera ce problème en présentant trois méthodes différentes.

Méthode 1 : utiliser la fonction de somme de boucle et de tableau

La méthode de calcul de moyenne la plus courante consiste à utiliser une boucle for pour parcourir le tableau, et à utiliser la fonction de somme de tableau pour accumuler tous les éléments du tableau, et enfin diviser par le nombre d'éléments. Une valeur moyenne peut être obtenue.

L'exemple de code est le suivant :

$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 />';
Copier après la connexion

Bien que cette méthode soit simple, elle nécessite l'utilisation d'une boucle for pour parcourir le tableau, ce qui affectera l'efficacité du programme lorsqu'il y a de nombreux éléments du tableau.

Méthode 2 : utilisez les fonctions array_sum() et count()

PHP fournit la fonction array_sum() pour additionner directement les tableaux, et avec la fonction count, vous pouvez rapidement obtenir la moyenne.

L'exemple de code est le suivant :

$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 />';
Copier après la connexion

Cette méthode est simple et efficace, éliminant le besoin d'une boucle for pour parcourir le tableau.

Méthode 3 : utilisez les fonctions array_map() et array_reduce()

En plus des fonctions array_sum() et count(), PHP fournit également les fonctions array_map() et array_reduce(), qui peuvent faire fonctionner les tableaux de manière plus flexible.

L'exemple de code est le suivant :

$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 />';
Copier après la connexion

Cette méthode utilise une fonction anonyme comme deuxième paramètre de array_reduce(), ce qui permet des opérations de sommation plus flexibles et évite l'utilisation de boucles for.

Résumé

Les trois méthodes ont chacune leurs propres avantages et inconvénients, et l'utilisation spécifique doit être sélectionnée en fonction de la situation réelle. La méthode 1 peut être utilisée pour les réseaux à petite échelle, et la méthode 2 ou la méthode 3 est recommandée pour les réseaux à plus grande échelle. Dans le même temps, il convient de noter que lorsque vous travaillez sur un tableau, vous devez faire attention au type et au nombre d'éléments du tableau pour éviter des situations inattendues.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal