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

Desafio dia habil

import java.util.Arrays;
import java.util.List;
import java.util.Scanner;

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

        Scanner scanner = new Scanner(System.in);
        System.out.print("Ingrese el día de la semana (en minúsculas): ");

        String dia = scanner.next();

        switch (dia.toUpperCase()) {
            case "LUNES", "MARTES", "MIERCOLES", "JUEVES", "VIERNES":
                System.out.println(dia + " es un día hábil.");
                break;
            default:
                System.out.println(dia + " no es un día hábil.");
        }

    }
}

1 respuesta

Hola Juan,

Veo que estás trabajando en un programa para verificar si un día es hábil o no. En tu código, estás utilizando un switch con toUpperCase(), lo que significa que estás convirtiendo la entrada a mayúsculas. Sin embargo, el ejercicio pide que la entrada sea en minúsculas y que la salida mantenga el formato original del día ingresado.

Para resolver esto, puedes modificar tu código de la siguiente manera:

import java.util.Scanner;

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

        Scanner scanner = new Scanner(System.in);
        System.out.print("Ingrese el día de la semana (en minúsculas): ");

        String dia = scanner.next();

        switch (dia) {
            case "lunes", "martes", "miércoles", "jueves", "viernes":
                System.out.println(capitalize(dia) + " es un día hábil.");
                break;
            default:
                System.out.println(capitalize(dia) + " no es un día hábil.");
        }
    }

    // Método para capitalizar la primera letra del día
    public static String capitalize(String str) {
        if (str == null || str.length() == 0) {
            return str;
        }
        return str.substring(0, 1).toUpperCase() + str.substring(1);
    }
}

Aquí he añadido un método capitalize que se encarga de poner en mayúscula la primera letra de la cadena, para que la salida coincida con el formato esperado del ejercicio. Así, si ingresas "miércoles", el programa imprimirá "Miércoles es un día hábil."

Espero que esto te ayude a resolver el desafío.