Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Sugestão] Verificação de dia útil

Queria aproveitar esta atividade não só para praticar o if e else, como as outras do curso, mas também queria revisitar o switch-case, que consegui sendo utilizado nesse desafio!

import java.util.Scanner;

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

    Scanner sc = new Scanner(System.in);
    System.out.println("Digite o dia da semana (em letras minúsculas):");
    String dia = sc.nextLine();

    switch (dia) {
        case "segunda":
            System.out.println("Segunda é um dia útil.");
            break;
        case "terca", "terça":
            System.out.println("Terça é um dia útil.");
            break;
        case "quarta":
            System.out.println("Quarta é um dia útil.");
            break;
        case "quinta":
            System.out.println("Quinta é um dia útil.");
            break;
        case "sexta":
            System.out.println("Sexta é um dia útil.");
            break;
        case "sábado", "sabado":
            System.out.println("Sábado não é um dia útil.");
            break;
        case "domingo":
            System.out.println("Domingo não é um dia útil.");
            break;
        default:
            System.out.println("Você não digitou um dia correto, ou realizou uma entrada incorreta. Tente novamente.");
    }

    sc.close();

}

}
2 respostas
solução!

Olá, Victor, como vai?

Muito interessante a sua iniciativa de revisitar o uso do switch-case durante a atividade. O seu código atende corretamente à proposta, tratando os dias úteis e finais de semana, além de considerar variações com e sem acentuação, o que demonstra um cuidado adicional com a entrada do usuário.

Como sugestão de melhoria, é possível simplificar a estrutura agrupando os casos que possuem o mesmo comportamento e reutilizando a própria variável digitada para compor a mensagem de saída, deixando o código mais enxuto e fácil de manter. Uma possível versão ficaria assim:

import java.util.Scanner;

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

        Scanner sc = new Scanner(System.in);
        System.out.printf("Digite o dia da semana (em letras minúsculas):");
        String dia = sc.nextLine();

        switch (dia) {
            case "segunda":
            case "terca", "terça":
            case "quarta":
            case "quinta":
            case "sexta":
                System.out.printf("%s é um dia útil.", dia);
                break;
            case "sábado", "sabado":
            case "domingo":
                System.out.printf("%s não é um dia útil.", dia);
                break;
            default:
                System.out.printf("Você não digitou um dia correto, ou realizou uma entrada incorreta. Tente novamente.");
        }

        sc.close();
    }
}

Parabéns pela prática e por compartilhar sua solução com a comunidade. O fórum está à disposição sempre que quiser trazer novas dúvidas ou evoluções do seu código.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!

Muito obrigado pela sugestão!!