1
resposta

[Projeto] Jogo De Acertar Número

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

public class Atividade2 {
    public static void main(String[] args) {
        int numAleatorio = new Random().nextInt(100);
        int num;
        int tentativas = 0;
        Scanner scanner = new Scanner(System.in);

        do {
            System.out.println("Digite o Numero");
            num = scanner.nextInt();
            tentativas ++;
            if(num==numAleatorio){
                System.out.println("Parabens Voce Acertou o Número era: " +numAleatorio);
                System.out.println("Numero de Tentaivas: " +tentativas);
                break;
            } else {
                System.out.println("Tente Novamente");
                System.out.println("Restam Tentativas" +(5-tentativas));
                System.out.println("-----------------------------------------");
            }



        }while(tentativas<=5);

        if(num!=numAleatorio)
        System.out.println("O Número era: " +numAleatorio);

    }
}
1 resposta

Oii, Felipe! Tudo bem?

Obrigada por compartilhar seu código com a comunidade Alura.

Gostei de como você implementou a lógica de tentativas no seu jogo. Parabéns por praticar.

Fiz uns ajustes no seu código, o problema principal era que o número de tentativas permitia um valor negativo, se você não quiser que isso aconteça, teste o código abaixo. Ah também adicionei uma validação para limitar o número de tentativas.

  1. A variável maxTentativas foi adicionada para facilitar o controle do limite de tentativas.
  2. O loop do-while foi alterado para tentativas < maxTentativas para garantir que não haja tentativas negativas.
  3. Mensagens ajustadas para o caso de alcançar o número máximo de tentativas.

Agora o programa exibe corretamente as tentativas restantes e evita mostrar tentativas negativas.

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

public class Atividade2 {
    public static void main(String[] args) {
        int numAleatorio = new Random().nextInt(100);
        int num;
        int tentativas = 0;
        int maxTentativas = 5;
        Scanner scanner = new Scanner(System.in);

        do {
            System.out.println("Digite o número:");
            num = scanner.nextInt();
            tentativas++;

            if (num == numAleatorio) {
                System.out.println("Parabéns! Você acertou! O número era: " + numAleatorio);
                System.out.println("Número de tentativas: " + tentativas);
                break;
            } else {
                if (tentativas < maxTentativas) {
                    System.out.println("Tente novamente.");
                    System.out.println("Restam tentativas: " + (maxTentativas - tentativas));
                    System.out.println("-----------------------------------------");
                } else {
                    System.out.println("Número máximo de tentativas atingido.");
                    System.out.println("-----------------------------------------");
                }
            }

        } while (tentativas < maxTentativas);

        if (num != numAleatorio) {
            System.out.println("O número correto era: " + numAleatorio);
        }

        scanner.close();
    }
}

Exemplo: Insira aqui a descrição dessa imagem para ajudar na acessibilidadeConte com o apoio do Fórum na sua jornada. Abraços e bons estudos!