2
respostas

Jogo da Adivinhação.

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

public class Main {

public static void main(String[] args) {


    int randomNumbers = new Random().nextInt(101);
    Scanner getNumero = new Scanner(System.in);
    int quantidadeTentativas = 5;
    System.out.println("\n*************************************" +
            "\n  BEM VINDO AO JOGO DA ADIVINHAÇÃO" +
            "\n*************************************" +
            "\nVocê terá apenas 5º Tentativas para acertar o Número que será gerado!!" +
            "\nBOA SORTE!!\n");
    for (int i = 1; i <= quantidadeTentativas; i++) {
        System.out.print("Essa é sua " + i + "º Tentativa, digite um Número: ");
        int numeroDigitado = getNumero.nextInt();
        if(i == quantidadeTentativas){
            System.out.print("\nInfelizmente você extrapolou os limites de Tentativas de "
                    + quantidadeTentativas + " Tentativas :(" +
                    "\nO Número que foi gerado foi: " + randomNumbers + "\n\n");
            break;
        }
        else if(numeroDigitado == randomNumbers){
            System.out.print("\nParabéns!!\nVocê conseguiu acertar o número Selecionado que foi: "
                    + randomNumbers + ".\n\n");
            break;
        } else if (numeroDigitado < randomNumbers){
            System.out.println("Infelizmente você erro :( \n" +
                    "O Número Digitado foi MAIOR que o Número Gerado.");
        } else if(numeroDigitado > randomNumbers){
            System.out.println("Infelizmente você erro :( \n" +
                    "O Número Digitado foi MENOR que o Número Gerado.");
        }
        System.out.println();
    }
2 respostas

O meu primeiro IF não teria necessidade de ser usado mas como eu não queria que fosse apresentado a mensagem que ele errou e depois apresenta-se a mensagem que ele perder eu não quis que ele ficasse dessa maneira.

Olá Luiz! Tudo bem?

Seu código está quase perfeito para o desafio do jogo de adivinhação! No entanto, notei alguns pontos que podem ser melhorados para que o jogo funcione conforme esperado. Vou destacar algumas sugestões:

  1. Correção das mensagens de erro: As mensagens que você exibe quando o usuário erra a tentativa está invertida. Se o número digitado é menor que o número gerado, a mensagem deveria dizer que o número digitado é menor, e vice-versa.

  2. Ajuste da condição de tentativa: A condição if(i == quantidadeTentativas) deve ser verificada após a verificação se o número digitado é igual ao número gerado, para que a última tentativa também seja considerada.

Aqui está o código ajustado:

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

public class Main {

    public static void main(String[] args) {
        int randomNumbers = new Random().nextInt(101);
        Scanner getNumero = new Scanner(System.in);
        int quantidadeTentativas = 5;

        System.out.println("\n*************************************" +
                "\n  BEM VINDO AO JOGO DA ADIVINHAÇÃO" +
                "\n*************************************" +
                "\nVocê terá apenas 5 Tentativas para acertar o Número que será gerado!!" +
                "\nBOA SORTE!!\n");

        for (int i = 1; i <= quantidadeTentativas; i++) {
            System.out.print("Essa é sua " + i + "ª Tentativa, digite um Número: ");
            int numeroDigitado = getNumero.nextInt();

            if (numeroDigitado == randomNumbers) {
                System.out.print("\nParabéns!!\nVocê conseguiu acertar o número Selecionado que foi: "
                        + randomNumbers + ".\n\n");
                break;
            } else if (numeroDigitado < randomNumbers) {
                System.out.println("Infelizmente você errou :( \n" +
                        "O Número Digitado foi MENOR que o Número Gerado.");
            } else if (numeroDigitado > randomNumbers) {
                System.out.println("Infelizmente você errou :( \n" +
                        "O Número Digitado foi MAIOR que o Número Gerado.");
            }

            if (i == quantidadeTentativas) {
                System.out.print("\nInfelizmente você extrapolou os limites de Tentativas de "
                        + quantidadeTentativas + " Tentativas :(" +
                        "\nO Número que foi gerado foi: " + randomNumbers + "\n\n");
            }
            System.out.println();
        }
    }
}

Continue mergulhando em tecnologia e se tiver dúvidas, conte com o fórum.

Abraços e bons estudos!