Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Projeto] Resposta - Senhas de Atendimento

void gerarMenu()
{
    Console.Clear();
    Console.WriteLine(@"
█▀ █▀▀ █▄░█ █░█ ▄▀█ █▀   █▀▄ █▀▀   ▄▀█ ▀█▀ █▀▀ █▄░█ █▀▄ █ █▀▄▀█ █▀▀ █▄░█ ▀█▀ █▀█
▄█ ██▄ █░▀█ █▀█ █▀█ ▄█   █▄▀ ██▄   █▀█ ░█░ ██▄ █░▀█ █▄▀ █ █░▀░█ ██▄ █░▀█ ░█░ █▄█");
    Console.WriteLine("\nSelecione uma Opção:");
    Console.WriteLine("1 - Gerar nova senha");
    Console.WriteLine("2 - Chamar próxima senha");
    Console.WriteLine("3 - Sair");
    Console.Write("\nOpção: ");
}

int opcao;
int senhaGerada = 0;
int senhaAtual = 0;

do
{
    gerarMenu();
    opcao = Convert.ToInt16(Console.ReadLine());
    Console.WriteLine();
    switch (opcao)
    {
        case 1:
            senhaGerada++;
            Console.WriteLine("Senha gerada: " + senhaGerada.ToString("D3"));
            Console.WriteLine("\nAperte qualquer tecla para continuar ...");
            Console.ReadKey();
            break;
        case 2:
            if (senhaAtual+1 <= senhaGerada)
            {
                senhaAtual++;
                Console.WriteLine("Senha chamada: " + senhaAtual.ToString("D3"));
            } else
            {
                Console.WriteLine("Nenhuma senha para chamar.");
            }
            Console.WriteLine("\nAperte qualquer tecla para continuar ...");
            Console.ReadKey();

            break;
        case 3:
            Console.WriteLine("Encerrando sistema.");
            break;
        default:
            Console.WriteLine("Opção inválida.");
            Thread.Sleep(1000);
            break;
    }
} while (opcao != 3);
1 resposta
solução!

Oi, Willian! Como vai?

Gostei da forma como você estruturou o menu usando Console.Clear() e os blocos switch para organizar as opções. A lógica de controle com senhaGerada e senhaAtual está bem aplicada, permitindo um fluxo simples e funcional de atendimento.

Uma dica interessante para o futuro é o uso do método Console.ForegroundColor para destacar visualmente senhas ou alertas, melhorando a experiência de quem utiliza o terminal.Veja este exemplo:


Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine("Senha gerada: " + senhaGerada.ToString("D3"));
Console.ResetColor();

Esse código muda temporariamente a cor do texto no console para verde, e depois volta à cor padrão. É útil para diferenciar visualmente mensagens importantes.

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