1
resposta

[Projeto] Jogo de Adivinhação

Insira aqui a descrição dessa imagem para ajudar na acessibilidadeAssim ficou o código final. Eu sei que pedir antes do loop para o usuário já informar um número dá a ele mais uma tentativa totalizando 6 tentativas em vez de 5. Eu poderia ter corrigido isso, mas preferi contar as tentativas a partir do momento que o usuário erra pela 1ª vez. Outra coisa, coloquei entra de dados dentro das condicionais pedindo para o usuário tentar outra vez, eu podia ter colocado somente uma vez e nas condicionais apenas uma mensagem de maior ou menor, mas ficaria parecido com o da professora, não quis copiar e quis deixar do meu jeito. Única coisa que gostei no do dela e levei para o meu foi a exibição das tentativas e do número gerado, eu esqueci desse detalhe.

1 resposta

Oi Sara,

Excelente iniciativa em personalizar o código e buscar soluções diferentes! 👍

É ótimo que você tenha percebido a questão das tentativas e a repetição da entrada de dados.

Para otimizar, você pode mover a entrada de dados para fora das condicionais e usar um do...while para garantir que o código execute pelo menos uma vez.

Dentro do loop, você pode verificar se o número digitado é maior, menor ou igual ao número gerado e exibir a mensagem correspondente.

Assim, você evita a repetição da entrada de dados e mantém a lógica clara.

int numeroDigitadoUsuario;
do {
    System.out.println("Digite um número de 0 a 100: ");
    numeroDigitadoUsuario = entrarComDado.nextInt();
    if (numeroDigitadoUsuario > numeroAleatorio) {
        System.out.println("O número digitado é maior que o número gerado, tente outra vez: ");
    } else if (numeroDigitadoUsuario < numeroAleatorio) {
        System.out.println("O número digitado é menor que o número gerado, tente outra vez: ");
    }
    quantidadeTentativas++;
} while (quantidadeTentativas < 5 && numeroDigitadoUsuario != numeroAleatorio);

Para saber mais: Laços de repetição em Java

Continue explorando e experimentando com o código! 🤔