Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
1
resposta

jogo de adivinhação

import java.util.Random;
import java.util.Scanner;

public class Equanto {
    public static void main(String[] args) {
        Scanner leitura = new Scanner(System.in);
        int numeroSecreto = new Random().nextInt(11);
        int tentativas =0;
        int numeroDigitado = 0;

        while (tentativas <5) {
            System.out.println("Digite um número entre 0 e 10: ");
            numeroDigitado = leitura.nextInt();
            tentativas++;

            if (numeroDigitado == numeroSecreto) {
                System.out.printf("Parabéns, você acertou o número secreto em %d tentativas!", tentativas);
                break;
            } else if (numeroDigitado < numeroSecreto) {
                System.out.println("O número digitado é menor que o número secreto.");
            } else {
                System.out.println("O número digitado é maior que o número secreto.");
            }
        }

        if (tentativas == 5 && numeroDigitado != numeroSecreto) {
            System.out.printf("Você não conseguiu acertar o número secreto em 05 tentativas!. O número secreto era %d:", numeroSecreto);
        }

    }
}
1 resposta
solução!

Oi, João. Tudo bem com você?

Parabéns por compartilhar sua solução. O código atende à proposta, utilizando corretamente a classe Random para gerar o número secreto, o Scanner para receber a entrada do usuário e um laço while para controlar o limite de tentativas. A lógica de comparação entre o número digitado e o número secreto também está funcionando corretamente, encerrando o jogo quando o usuário acerta ou quando as cinco tentativas são esgotadas.

Apenas deixo uma dica de melhoria: uma possibilidade seria declarar o valor máximo de tentativas em uma variável, por exemplo int maxTentativas = 5;, evitando repetir o número em diferentes partes do código.

Uma evolução interessante para esse exercício seria perguntar ao usuário, ao final da partida, se ele deseja jogar novamente. Assim, você praticaria outro conceito importante em Java, combinando estruturas de repetição e condicionais em um programa mais completo.

Quais outras funcionalidades você gostaria de adicionar ao jogo para deixá-lo mais interessante, como níveis de dificuldade ou pontuação?

Parabéns pelo exercício e obrigado por compartilhar sua solução. Continue praticando e utilizando o fórum sempre que surgir alguma dúvida. Estamos à disposição para ajudar.

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