Solicitar notas de estudiante, ordenar y calcular promedio con PHP
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.
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.
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.
En este post te quiero compartir un código de C++ para listar y cancelar trabajos…
Gracias a WebAssembly podemos ejecutar código de otros lenguajes de programación desde el navegador web…
Revisando y buscando maneras de imprimir un PDF desde la línea de comandos me encontré…
Esta semana estuve recreando la API del plugin para impresoras térmicas en Android (HTTP a…
Hoy te enseñaré a extraer la cadena base64 de una clave PEM usando una función…
Encender un foco con un Bot de Telegram es posible usando una tarjeta como la…
Esta web usa cookies.