Ejercicio 20 – clasificación de notas

Enunciado

Pedir al usuario una nota entera de 0 a 10 y mostrar su calificación textual:

  • 0–4 → Insuficiente
  • 5 → Suficiente
  • 6 → Bien
  • 7–8 → Notable
  • 9–10 → Sobresaliente

Primero se debe resolver usando switch tradicional (sentencia) y luego usando la versión moderna de switch (expresión).

Conceptos importantes

📌 Switch sentencia (versión clásica)

Requé usar break para evitar qué el programa ejecute varios casos.

📌 Switch expresión (Java 14+)

Devuelve directamente un valor y permite usar el operador . Es más limpio y más seguro.

Solución en Java — Switch tradicional


import java.util.Scanner;

public class Ejercicio20 {
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        System.out.print("Introduce una nota (0-10): ");
        int nota = sc.nextInt();

        switch (nota) {
            case 0:
            case 1:
            case 2:
            case 3:
            case 4:
                System.out.println("Insuficiente");
                break;
            case 5:
                System.out.println("Suficiente");
                break;
            case 6:
                System.out.println("Bien");
                break;
            case 7:
            case 8:
                System.out.println("Notable");
                break;
            case 9:
            case 10:
                System.out.println("Sobresaliente");
                break;
            default:
                System.out.println("Nota no válida");
        }
    }
}
    

Solución con switch expresión (más moderno)


String resultado = switch (nota) {
    case 0, 1, 2, 3, 4 -> "Insuficiente";
    case 5 -> "Suficiente";
    case 6 -> "Bien";
    case 7, 8 -> "Notable";
    case 9, 10 -> "Sobresaliente";
    default -> "Nota no válida";
};

System.out.println(resultado);
    

Ejemplos de ejecución


Introduce una nota (0-10): 8
Notable
    

Introduce una nota (0-10): 3
Insuficiente
    

Introduce una nota (0-10): 11
Nota no válida