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

Dia Laboral

Comparto mi Codigo

package com.CondicionalesJava;
import java.util.Scanner;

public class DiaLaboral {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        // Solicitar al usuario ingresar un día en texto o número
        System.out.print("Ingrese un día de la semana (nombre en minúsculas o número del 1 al 7): ");
        String entrada = scanner.nextLine().toLowerCase();

        int diaNumero;
        String nombreDia = "";

        // Validar si la entrada es un número
        if (entrada.matches("[1-7]")) {
            diaNumero = Integer.parseInt(entrada);
        } else {
            // Convertir los nombres de los días en números y asignar nombre correspondiente
            switch (entrada) {
                case "lunes":
                    diaNumero = 1;
                    nombreDia = "Lunes";
                    break;
                case "martes":
                    diaNumero = 2;
                    nombreDia = "Martes";
                    break;
                case "miércoles":
                    diaNumero = 3;
                    nombreDia = "Miércoles";
                    break;
                case "jueves":
                    diaNumero = 4;
                    nombreDia = "Jueves";
                    break;
                case "viernes":
                    diaNumero = 5;
                    nombreDia = "Viernes";
                    break;
                case "sábado":
                    diaNumero = 6;
                    nombreDia = "Sábado";
                    break;
                case "domingo":
                    diaNumero = 7;
                    nombreDia = "Domingo";
                    break;
                default:
                    diaNumero = -1; // Entrada inválida
            }
        }

        // Asignar nombre del día si el usuario ingresó un número
        if (diaNumero == 1) nombreDia = "Lunes";
        else if (diaNumero == 2) nombreDia = "Martes";
        else if (diaNumero == 3) nombreDia = "Miércoles";
        else if (diaNumero == 4) nombreDia = "Jueves";
        else if (diaNumero == 5) nombreDia = "Viernes";
        else if (diaNumero == 6) nombreDia = "Sábado";
        else if (diaNumero == 7) nombreDia = "Domingo";

        // Evaluar si es un día hábil o no
        if (diaNumero >= 1 && diaNumero <= 5) {
            System.out.println(nombreDia + " es un día hábil.");
        } else if (diaNumero == 6 || diaNumero == 7) {
            System.out.println(nombreDia + " no es un día hábil.");
        } else {
            System.out.println("Entrada no válida. Por favor, ingrese un día correcto.");
        }

        scanner.close();
    }
}

Resultado del primer codigo, fondo de pantalla negra Prueba de codigo 02, color fondo negro resultado dia no laboral

1 respuesta

Hola Julieta, espero que estés bien

Tu código parece estar funcionando correctamente para determinar si un día es hábil o no. Aquí hay algunos puntos que podrías considerar para mejorar o simplificar tu código:

  1. Entrada de Datos: Ya que el ejercicio pide que el día se ingrese en minúsculas, podrías eliminar la opción de ingresar números y enfocarte solo en los nombres de los días.

  2. Simplificación: Puedes simplificar la asignación del nombre del día eliminando la segunda parte donde vuelves a asignar nombreDia basándote en diaNumero.

Espero que esto te ayude y buenos estudios!