3
respostas

[Sugestão] Possível solução: Jogo de adivinhação

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

public class random {

 public static void main(String[] args) {

    Scanner leitura = new Scanner(System.in);

    int numeroAleatorio = new Random().nextInt(100);

    int numeroEscolhido;

    int tentativa = 1;

    while (tentativa <= 5) {
        System.out.println("Escolha um número de 0 a 100 ");
        numeroEscolhido = leitura.nextInt();

        System.out.println("O número escolhido é " + numeroEscolhido);

        System.out.println("O número sorteado é " + new Random().nextInt(100));

        System.out.println("Está é a tentativa de número " + tentativa++);

        if (numeroAleatorio > numeroEscolhido)
            System.out.println("O número informado é menor que o número sorteado");
        else
            System.out.println("O número informado é maior que o número sorteado");

        if (tentativa > 5)
            System.out.println("Tentativas excedidas");

        if (numeroEscolhido == numeroAleatorio)
            System.out.println("Parabéns,você acertou o número ");
    }
}
3 respostas

Olá Renan, tudo bem? Obrigada por compartilhar seu código conosco!

Muito bom! O código parece estar funcionando bem, mas tenho uma sugestão para melhorá-lo.

Ao invés de gerar um novo número aleatório a cada tentativa, você pode armazenar o número sorteado em uma variável e compará-la com o número escolhido pelo usuário em cada tentativa. Isso evita que o número sorteado mude durante o jogo, o que pode ser confuso para o jogador.

Além disso, você pode adicionar uma mensagem de erro caso o usuário escolha um número fora do intervalo de 0 a 100, para evitar erros no programa.

Ficaria algo assim:

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

public class JogoAdivinhacao {

public static void main(String[] args) {

    Scanner leitura = new Scanner(System.in);

    int numeroAleatorio = new Random().nextInt(100);

    int numeroEscolhido;

    int tentativa = 1;

    while (tentativa <= 5) {
        System.out.println("Escolha um número de 0 a 100 ");
        numeroEscolhido = leitura.nextInt();

        if (numeroEscolhido < 0 || numeroEscolhido > 100) {
            System.out.println("Número inválido. Escolha um número entre 0 e 100.");
            continue;
        }

        System.out.println("O número escolhido é " + numeroEscolhido);

        System.out.println("Está é a tentativa de número " + tentativa++);

        if (numeroAleatorio > numeroEscolhido)
            System.out.println("O número informado é menor que o número sorteado");
        else if (numeroAleatorio < numeroEscolhido)
            System.out.println("O número informado é maior que o número sorteado");
        else {
            System.out.println("Parabéns, você acertou o número!");
            break;
        }

        if (tentativa > 5)
            System.out.println("Tentativas excedidas");
    }
}

}

Espero ter ajudado e bons estudos!

Muito obrigado... Curti muito a dica e a explicação... Ficou tudo bem claro

Fico feliz em ajudar, Renan! Qualquer dúvida é só perguntar. Bons estudos!