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

[Projeto] Saudação personalizada (Minha Versão)

    string Nome = "";
    int periodo = 0;

    Console.Write(@"
1 - Manhã
2 - Tarde
3 - Noite
 
Que momento do dia é agora? ");
    periodo = int.Parse(Console.ReadLine()!);

    Console.Write("Qual o seu nome? ");
    Nome = Console.ReadLine()!;

    switch (periodo) {
        case 1:
            Console.WriteLine($"Bom dia, {Nome}.");
            break;
            
        case 2:
            Console.WriteLine($"Boa tarde, {Nome}.");
            break;

        case 3:
            Console.WriteLine($"Boa noite, {Nome}.");
            break;

        default:
            Console.WriteLine("Operação inválida");
            break;
    }
2 respostas
solução!

Olá, Bruno!

Parabéns por compartilhar a sua versão do projeto Saudação personalizada. Ficou nítido como você utilizou a estrutura switch-case de forma limpa para organizar os diferentes fluxos de resposta do sistema.

A sua escolha pelo switch-case em vez de múltiplos if/else torna o código mais legível e fácil de manter, o que é uma excelente prática em C#. Ao definir um caso para cada período e incluir o default para tratar entradas inesperadas, você garante que o programa seja direto e não apresente comportamentos estranhos caso o usuário digite uma opção fora do menu. O uso de interpolação de strings ($"") também deixa a exibição da mensagem muito mais elegante.

Um ponto interessante para o futuro seria explorar como tratar possíveis erros na conversão do número com o int.TryParse, evitando que o programa feche sozinho se o usuário digitar uma letra por engano.

Na sua opinião, você acha que o switch-case facilitaria a adição de novos períodos, como "Madrugada", em comparação com o uso de condicionais tradicionais?

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

Sim, colocaria mais um case: