Olá, pessoal.
Gostaria de compartilhar com vocês o código do meu jogo da adivinhação que é definido pelo seguinte enunciado:
Crie um programa que simula um jogo de adivinhação, que deve gerar um número aleatório entre 0 e 100 e pedir para que o usuário tente adivinhar o número, em até 5 tentativas. A cada tentativa, o programa deve informar se o número digitado pelo usuário é maior ou menor do que o número gerado.
Dicas:
Para gerar um número aleatório em Java: new Random().nextInt(100);
Utilize o Scanner para obter os dados do usuário;
Utilize uma variável para contar as tentativas;
Utilize um loop para controlar as tentativas;
Utilize a instrução break; para interromper o loop.
Segue o código completo abaixo:
/*
Crie um programa que simula um jogo de adivinhação, que deve gerar um número aleatório entre 0 e 100 e pedir para que o usuário tente adivinhar o número, em até 5 tentativas. A cada tentativa, o programa deve informar se o número digitado pelo usuário é maior ou menor do que o número gerado.
Dicas:
Para gerar um número aleatório em Java: new Random().nextInt(100); - Feito
Utilize o Scanner para obter os dados do usuário; - Feito
Utilize uma variável para contar as tentativas; - Feito
Utilize um loop para controlar as tentativas; - Feito
Utilize a instrução break; para interromper o loop. - Feito
*/
import java.util.Random;
import java.util.Scanner;
public class JogoAdivinhacao {
public static void main(String[] args) {
Scanner leitura = new Scanner(System.in);
int game = 1;
while (game == 1) {
int random = new Random().nextInt(100);
int guess = 0;
boolean correct = false;
for (int i = 4; i >= 0; i--) {
System.out.println("Digite um número entre 1 e 100");
guess = leitura.nextInt();
if (guess > random) {
System.out.println("O número sorteado é menor do que o número digitado.");
} else if (guess < random) {
System.out.println("O número sorteado é maior do que o número digitado.");
} else {
correct = true;
break;
}
if (i > 0) {
System.out.println("\nVocê tem mais %d tentativas\n".formatted(i));
} else {
System.out.println("\nSuas tentativas acabaram.\n");
}
}
if (correct) {
System.out.println("Você ganhou o jogo!\n");
System.out.println("O número secreto era %d!\n".formatted(random));
} else {
System.out.println("Que pena... Você perdeu!\n");
System.out.println("O número secreto era %d!\n".formatted(random));
}
System.out.println("""
Deseja jogar novamente?
1 - SIM
0 - NÃO
""");
game = leitura.nextInt();
if (game == 0) {
System.out.println("\nObrigado por jogar!");
break;
}
}
}
}
Gostaria de um feedback da comunidade sobre alguma sugestão de futura implementação a ser feita no meu pequeno projeto.
Abraços, Gabriel