Ejercicio 21 – Número de días del mes

Enunciado

Pedir al usuario el número del mes (entre 1 y 12) y mostrar cuántos días tiene dicho mes.

Explicación del ejercicio

Para resolver este ejercicio se utiliza una estructura switch con agrupación de casos, ya qué varios meses comparten el mismo número de días.

📌 clasificación por días

  • 31 días: Enero, Marzo, Mayo, Julio, Agosto, Octubre, Diciembre
  • 30 días: Abril, Junio, Septiembre, Noviembre
  • Febrero: 28 días (29 en años bisiestos)

Si el usuario introduce un valor fuera del rango 1–12, se muestra un mensaje de error.

Solución en Java


import java.util.Scanner;

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

        Scanner sc = new Scanner(System.in);
        System.out.print("Introduce el número del mes (1-12): ");
        int mes = sc.nextInt();

        switch (mes) {
            // meses con 31 días
            case 1:
            case 3:
            case 5:
            case 7:
            case 8:
            case 10:
            case 12:
                System.out.println("Este mes tiene 31 días.");
                break;

            // meses con 30 días
            case 4:
            case 6:
            case 9:
            case 11:
                System.out.println("Este mes tiene 30 días.");
                break;

            // febrero
            case 2:
                System.out.println("Este mes tiene 28 días (29 si es año bisiesto).");
                break;

            default:
                System.out.println("Mes no válido.");
        }
    }
}
    

Ejemplos de ejecución


Introduce el número del mes (1-12): 7
Este mes tiene 31 días.
    

Introduce el número del mes (1-12): 2
Este mes tiene 28 días (29 si es año bisiesto).
    

Introduce el número del mes (1-12): 15
Mes no válido.