Hola Juan,
¡Espero que estés bien! Revisando tu código, parece que estás muy cerca de lograr lo que se pide en el ejercicio. Sin embargo, hay un pequeño error en las condiciones de tu estructura if/else
que podría causar resultados inesperados. Vamos a revisarlo:
En la parte de tu código donde verificas el promedio, tienes:
if (promedio > 7.0) {
System.out.println(String.format("El estudiante tuvo un promedio de %.2f y fue aprobado", promedio));
} else if (promedio > 5.0 && promedio < 6.9) {
System.out.println(String.format("El estudiante tuvo un promedio de %.2f y está en recuperación", promedio));
} else if (promedio < 5.0) {
System.out.println(String.format("El estudiante tuvo un promedio de %.2f y fue reprobado", promedio));
}
Según las reglas de la escuela, un estudiante es aprobado si su promedio es mayor o igual a 7.0, y está en recuperación si el promedio está entre 5.0 y 6.9 inclusive. Por lo tanto, deberías ajustar las condiciones de la siguiente manera:
if (promedio >= 7.0) {
System.out.println(String.format("El estudiante tuvo un promedio de %.2f y fue aprobado", promedio));
} else if (promedio >= 5.0 && promedio <= 6.9) {
System.out.println(String.format("El estudiante tuvo un promedio de %.2f y está en recuperación", promedio));
} else {
System.out.println(String.format("El estudiante tuvo un promedio de %.2f y fue reprobado", promedio));
}
Con este ajuste, tu programa debería funcionar correctamente de acuerdo con las reglas proporcionadas. Espero que esto te ayude a resolver el desafío.
¡Espero haber ayudado y buenos estudios!