En este post vamos a resolver otro ejercicio propuesto en PHP. Se trata de solicitar las notas de un estudiante, ordenarlas y después calcular el promedio e imprimirlo.
Vamos a usar el ciclo for, foreach, manejar arreglos, ordenamiento de arreglos y cálculo del promedio.
Descripción del ejercicio
El ejercicio dice así: capture 5 notas de un estudiante universitario y almacénelos en un array unidimensional que que se llame notas.
Luego presente las notas de manera ascendente utilizando ciclos de repetición. Finalmente debe presentar en pantalla el promedio de las notas del estudiante.
Código PHP – Solución
Por lo tanto vamos a solicitar los datos y luego implementar el método de ordenación. Como no se indica cuál, he optado por el método de la burbuja porque el algoritmo es fácil de entender para el programador principiante.
El código completo queda así:
<?php
# https://parzibyte.me/blog
$notas = [];
$cantidadNotas = 5;
for ($i = 0; $i < $cantidadNotas; $i++) {
echo "Ingrese la nota #" . ($i + 1) . ": ";
fscanf(STDIN, "%f", $nota);
// Agregar al arreglo
$notas[] = $nota;
}
// Ordenamos el arreglo
for ($i = 0; $i < $cantidadNotas; $i++) {
for ($j = 0; $j < $cantidadNotas - 1; $j++) {
if ($notas[$j] > $notas[$j + 1]) {
$temporal = $notas[$j];
$notas[$j] = $notas[$j + 1];
$notas[$j + 1] = $temporal;
}
}
}
// Lo imprimimos y a la vez vamos calculando el promedio
$sumatoria = 0;
echo "Notas de manera ascendente: \n";
foreach ($notas as $nota) {
$sumatoria += $nota;
echo $nota . "\n";
}
$promedio = $sumatoria / $cantidadNotas;
echo "Promedio: " . $promedio;
Al ejecutarlo desde la terminal, los resultados son correctos:
Recuerda que tú puedes ejecutarlo usando un servidor web a través de un formulario o como tú lo prefieras. Yo solo te muestro este ejercicio resuelto con PHP.
Si quieres puedes probarlo en línea. Si este lenguaje te gusta, te invito a leer más sobre PHP en mi blog.