1
resposta

[Sugestão] minha resolução

eu resolvi desta forma, talvez tenha formas melhores.

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

public class Adivinhacao {
    public static void main(String[] args) {
        Random random = new Random();
        Scanner leitura = new Scanner(System.in);
        int tentativas = 0;
        int numeroDigitado = 0;
        int numeroAleatorio = random.nextInt(100);

        while (tentativas < 5){
            System.out.println("advinhe o número sorteado entre 0 e 100: ");
            numeroDigitado = leitura.nextInt();
            tentativas++;

            if(numeroDigitado == numeroAleatorio){
                System.out.println("Parabéns! Você acertou o número em " + tentativas + " tentativas.");
                break;

                } else if (numeroDigitado < numeroAleatorio) {
                    System.out.println("Tente um número maior.");
                } else {
                    System.out.println("Tente um número menor.");
                }
            }

        if (tentativas == 5) {
            System.out.println("Você não conseguiu adivinhar o número em 5 tentativas. O número era " + numeroAleatorio);
        }

        }
    }
1 resposta

Olá Leandro, tudo bem?

Sua resolução está muito boa! O código está bem organizado e fácil de entender.

Uma sugestão é incluir um tratamento de exceção caso o usuário digite um valor que não seja um número.

Por exemplo:

try {
  numeroDigitado = leitura.nextInt();
} catch (InputMismatchException e) {
  System.out.println("Por favor, digite um número válido.");
  leitura.next(); // limpa o buffer do scanner
  continue; // volta para o início do loop
}

Espero ter ajudado e bons estudos!