1
resposta

Projeto numero aleatorio

Gostaria de uma analise sobre o programa, deixei a mensagem que informa o numero escolhido apenas para teste.

int numero;
string valor;
//Gerwador randomico
 Random geradorDeNumero = new Random();
int  numeroAleatorio = geradorDeNumero.Next(1, 20); // Gera número entre 1 e 100 (inclusive 1, exclusivo 101)
 Console.WriteLine("Número gerado: " + numeroAleatorio);
verificaNumero();
// funcao verifca se o que foi digitado é numero
void verificaNumero()
{
    do
    {
        Console.WriteLine("Digite um numero de 1 a 100");
        valor = Console.ReadLine()!;
        numero = int.Parse(valor);
    }
    while (numero < 1 || numero > 100);
    Console.WriteLine("Numero Escolhido é " + numero);
}

 //compara o numero aleatorio com o escolhido
if (numero == numeroAleatorio)
{
    Console.WriteLine("Acertou, meus Parabéns");
}else{
    Console.WriteLine("tente de novo");
    verificaNumero();
}
//Pergunta se quer continuar o jogo
Console.WriteLine("Quer continuar? S=Sim / N=Não");
string resposta = Console.ReadLine();
switch (resposta) {
    case "s":
        verificaNumero();
        break;
    case "n":
        Console.WriteLine("Tchau");
        break;
}
1 resposta

Oi, Ivan! Como vai?

Seu programa está bem estruturado e mostra uma boa prática ao usar do...while para validar a entrada do usuário. Gostei da separação da função verificaNumero, o que ajuda na clareza do código.

Uma dica interessante para o futuro é usar o método int.TryParse() ao invés de int.Parse() para evitar erros se o usuário digitar algo que não seja número. Veja este exemplo:


string entrada = Console.ReadLine();
if (int.TryParse(entrada, out int numeroDigitado)) {
    Console.WriteLine("Numero valido: " + numeroDigitado);
} else {
    Console.WriteLine("Digite um numero valido.");
}

Esse código evita que o programa quebre caso a entrada não seja numérica.

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