Berechnen Sie den Durchschnitt der Zahlen in PHP

Olorunfemi Akinlua 30 Januar 2023
  1. Verwenden Sie array_sum() und count() für den spezifischen Zahlensatz
  2. Verwenden Sie die while-Schleife für den fortlaufenden Nummernsatz
Berechnen Sie den Durchschnitt der Zahlen in PHP

Wenn wir in PHP programmieren, stoßen wir auf verschiedene mathematische Operationen, die wir ausführen müssen. Addition, Subtraktion, Multiplikation und Division sind die nativen.

Ein typischer ist der Durchschnitt, auch Mittelwert genannt. In diesem Artikel erwägen wir die Verwendung von PHP-integrierten Funktionen, um den Durchschnitt einer bekannten Menge von Zahlen und einer fortlaufenden Menge von Zahlen zu berechnen.

Verwenden Sie array_sum() und count() für den spezifischen Zahlensatz

Die einfache Durchschnittsformel ist die Summe der Zahlen dividiert durch die Häufigkeit (Anzahl) der Zahlen. Um den Durchschnitt von 1, 3, 4, 5 und 6 zu finden, addieren wir daher 1+3+4+5+6, was 19 ergibt, und teilen 19 durch die Häufigkeit der Zahlen, die 5 ist, und der Durchschnitt wird 3,8 sein.

Code - PHP:

<?php
    $sum = 1 + 3 + 4 + 5 + 6;
    $frequency = 5;

    $average = $sum/$frequency;
?>

Dies ist jedoch ziemlich einfach, wenn wir die Häufigkeit von Zahlen leicht zählen können. Dafür brauchen wir Funktionen wie array_sum() und count().

Mit diesen beiden integrierten Funktionen können Sie ganz einfach die Summe von Zahlen in einem Array berechnen, da Arrays eine bessere Datenstruktur zum Speichern von Folgen von Elementen wie Ganzzahlen und Gleitkommazahlen sind.

Lassen Sie uns dieselben Zahlen in einem Array speichern und den Durchschnitt berechnen.

Code:

<?php
   $numbers = [1, 3, 4, 5, 6];

   $average =  array_sum($numbers)/count($numbers);
   print_r($average);
?>

Ausgabe:

3.8

Lassen Sie uns das etwas fortgeschrittener machen, wo wir automatisch einige Zufallszahlen generieren.

<?php
     $numbers = array_map(function () {
       return rand(0, 100);
   }, array_fill(0, 193, null));

   $average =  array_sum($numbers)/count($numbers);
   print_r($average);
?>

Ausgabe:

49.331606217617

Ihre Ausgabe wird sich von unserer unterscheiden, da die Zahlen innerhalb der Arrays zufällig generiert werden.

Verwenden Sie die while-Schleife für den fortlaufenden Nummernsatz

Das vorherige Beispiel behandelt eine Liste bekannter Nummern. Es gibt jedoch Fälle, in denen Sie den Durchschnitt vielleicht unterwegs berechnen möchten, wie in einer PHP-Anwendung für ein Bildungs-Dashboard.

Angenommen, Sie möchten den wöchentlichen Durchschnitt berechnen, solange sich der Schüler auf diesem Weg befindet. Wir können die while-Schleife verwenden, um kontinuierlich nach den Zahlen zu fragen und die Zahl in jedem Intervall zu berechnen.

In diesem Beispiel verwenden wir die Funktion readline() und die typischen Funktionen array_sum() und count(). Darüber hinaus verwenden wir die interaktive PHP-Shell über die folgende Shell-Anweisung.

php main.php

Code - main.php:

<?php

$temp = [];

echo "\nAdding numbers repeatedly to get the average at each intervals";
echo "\nIf you want to terminate the program, type 000";

while (True) {
  echo "\n\n";
  $a = (float)readline("Enter a number: ");
  if ($a != 000) {
    array_push($temp, $a);
    $average = array_sum($temp)/count($temp);
    echo "Current average is ". $average;
    echo "\n";
  } else {
    break;
  }
}

$frequency = count($temp);

echo "\nAverage of all the numbers ($frequency) is $average.";

?>

Das Array $temp enthält die Zahlen, die die Benutzer eingeben. Die while-Schleife ermöglicht es uns, für immer nach einer neuen Zahl zu fragen, es sei denn, die Break-Bedingung ist erfüllt, die Null (0) ist.

Der folgende Code macht die Eingabe des Benutzers über die Funktion readline() und stellt sicher, dass es sich um einen erhaltenen Float handelt.

$a = (float)readline("Enter a number: ");

Der folgende Befehl erhält eine Ganzzahl.

$a = (int)readline("Enter a number: ");

Wir fügen die Nummer des Benutzers mit der Funktion array_push() zum $temp-Array hinzu. Danach berechnen wir den Durchschnitt mit den Funktionen array_sum() und count() wie zuvor.

Wenn wir fertig sind, können wir 0 eingeben, um das Programm zu beenden, was die break-Anweisung einleitet. Schließlich drucken wir den Durchschnitt aller eingegebenen Zahlen der Benutzer.

$frequency = count($temp);

echo "\nAverage of all the numbers ($frequency) is $average.";

Interaktive Shell-Ausgabe:

> php main.php

Adding numbers repeatedly to get the average at each interval
If you want to terminate the program, type 0

Enter a number: 11

Current average is 1


Enter a number: 3

Current average is 2


Enter a number: 6

Current average is 3.3333333333333


Enter a number: 88

Current average is 4.5


Enter a number: 1010

Current average is 5.6


Enter a number: 0

Average of all the numbers (5) is 5.6.
Olorunfemi Akinlua avatar Olorunfemi Akinlua avatar

Olorunfemi is a lover of technology and computers. In addition, I write technology and coding content for developers and hobbyists. When not working, I learn to design, among other things.

LinkedIn