Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

[Proyecto] aprobación asignatura

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("Digite su promedio: ");
        double media = scanner.nextInt();
        if (media >= 7){
            System.out.println("Aprobado");
        } else if (media >= 5){
            System.out.println("Recuperando");
        } else {
            System.out.println("Reprobado");
        }
    }
}
1 respuesta

Hola Karol,

Parece que estás trabajando en un proyecto para verificar la aprobación de una asignatura usando condicionales en Java. He notado un pequeño detalle en tu código que podría estar causando un problema. Estás usando scanner.nextInt() para leer el promedio, pero deberías usar scanner.nextDouble() ya que el promedio puede ser un número decimal.

Aquí tienes cómo podrías ajustar tu código:

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("Digite su promedio: ");
        double media = scanner.nextDouble(); // Cambiado a nextDouble para aceptar decimales
        if (media >= 7.0) {
            System.out.println("El estudiante tuvo un promedio de " + media + " y fue aprobado.");
        } else if (media >= 5.0) {
            System.out.println("El estudiante tuvo un promedio de " + media + " y está en recuperación.");
        } else {
            System.out.println("El estudiante tuvo un promedio de " + media + " y fue reprobado.");
        }
        scanner.close(); // Es una buena práctica cerrar el scanner
    }
}

Con este ajuste, tu programa debería funcionar correctamente para los promedios decimales, como se espera en el ejercicio. Espero que esta solución te sea útil.

¡Espero haber ayudado y buenos estudios!