1
resposta

[DESAFIO] Faça como eu fiz: jogo de adivinhação

public class JogoAdivinhacao{
    public static void main(String[] args){
        Scanner leitura = new Scanner(System.in); 
        int tentativa = 0;
        numeroAleatorio = new Random().nextInt(100);
        while (tentativas < 5){   
            System.out.println(System.out.println("Tentativa " + (tentativas + 1) + " de 5. Digite um número:");
            int numeroUsuario = leitura.nextInt();
            tentativas++;
            if (numeroUsuario = numeroAleatorio){
                System.out.println("O número sorteado era: " +numeroAleatorio ", parabéns você acertou!");
                break;
            }
            if (numeroUsuario > numeroAleatorio){
                System.out.println
                ("O número que você escolheu é maior do que o sorteado...");
            }	
            if (numeroUsuario < numeroAleatorio){
                System.out.println
                ("O número que você escolheu é menor do que o sorteado...");
            }
            if (tentativas == 5 && numeroUsuario != numeroAleatorio) {
                System.out.println("Você excedeu o número de tentativas :/ ");
                System.out.println("O número sorteado era: " +numeroAleatorio);
            }
        }
    }
}
1 resposta

Oi, Jennifer! Como vai?

Do jeito que você explicou e mostrou, chamou atenção a estrutura do while e a forma como você controla as tentativas, o que mostra um bom entendimento do fluxo da aplicação.

O problema aqui é que alguns detalhes de sintaxe acabam impedindo o funcionamento correto, como o uso do operador de atribuição = no if em vez do comparador ==, além de pequenos ajustes em variáveis e impressões no System.out.println.

Uma dica interessante para o futuro é usar o método equals ou operadores corretos de comparação e organizar melhor as mensagens exibidas, o que facilita a leitura e manutenção do código. Veja este exemplo:


int numeroAleatorio = new Random().nextInt(100);
if (numeroUsuario == numeroAleatorio) {
    System.out.println("Voce acertou o numero!");
}

Esse código compara corretamente os valores e executa o bloco apenas quando o usuário acerta o número sorteado.

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