Estoy tratando de encontrar el valor mínimo, máximo y promedio en una matriz de números:
Tengo el siguiente código a continuación:
$number = array(15,20,100,10,25,30); for ($i=0; $i<count($number); $i++){ //Find maximum number by max function. if ($number[$i] == max($number)){ //Print maximum number. $max = $number[$i]; } //Find minimum number by min function. elseif ($number[$i] == min($number)) { //Print minimum number. $min = $number[$i]; } //Find the average else ($number[$i] == avg($number)){ //Print average number $avg =$number[$i]; } } echo "min value is $min <br/>"; echo "max value is $max <br/>"; echo "average value is $avg </br>";Parece que me está dando un error de sintaxis en la parte promedio. Por favor amablemente ayuda.
Tu bucle for es contraproducente aquí. Ya está usando casi todas las funciones integradas que necesita para obtener los valores que desea, pero con el bucle for , las está usando muchas más veces de las necesarias. Todo lo que necesitas es:
$max = max($number); $min = min($number); $avg = array_sum($number) / count($number);En PHP, no hay una función avg() inherente, pero puede obtener el promedio fácilmente. Suma el total a medida que recorres:
$total = $total + $number[$i];luego dividir por el número de valores:
$avg = $total / count($number);