import java.util.Random;
import java.util.Scanner;
public class JuegoAdivinacion {
public static void main(String[] args) {
// 1. Inicialización de herramientas
Scanner scanner = new Scanner(System.in);
Random random = new Random();
// 2. Generar un número aleatorio entre 0 y 100
// nextInt(101) genera un número entre 0 (incluido) y 101 (excluido),
// lo que equivale a 0 a 100.
int numeroSecreto = random.nextInt(101);
int intentosMaximos = 5;
int intentoActual = 0;
int suposicionUsuario;
boolean adivinado = false;
System.out.println("¡Bienvenido al Juego de Adivinación!");
System.out.println("He generado un número entre 0 y 100. Tienes " + intentosMaximos + " intentos para adivinarlo.");
// 3. Bucle para controlar los intentos
while (intentoActual < intentosMaximos) {
// Incrementar el contador de intentos
intentoActual++;
System.out.print("\nIntento #" + intentoActual + ". Ingresa tu número: ");
// Manejar posibles errores si el usuario no ingresa un número
if (scanner.hasNextInt()) {
suposicionUsuario = scanner.nextInt();
} else {
System.out.println("Entrada no válida. Por favor, ingresa un número.");
scanner.next(); // Consumir la entrada no válida para evitar un bucle infinito
intentoActual--; // Descontar el intento si la entrada fue inválida
continue; // Saltar a la siguiente iteración del bucle
}
// 4. Comprobar si el número es correcto
if (suposicionUsuario == numeroSecreto) {
adivinado = true;
break; // Usar 'break' para salir del bucle si acierta
} else if (suposicionUsuario < numeroSecreto) {
// Pista: El número es mayor
System.out.println("El número secreto es MAYOR que " + suposicionUsuario + ".");
} else {
// Pista: El número es menor
System.out.println("El número secreto es MENOR que " + suposicionUsuario + ".");
}
}
// 5. Resultado final del juego
System.out.println("\n--- FIN DEL JUEGO ---");
if (adivinado) {
System.out.println("¡Felicidades! Adivinaste el número " + numeroSecreto + " en " + intentoActual + " intentos.");
} else {
System.out.println("¡Lo siento! Te quedaste sin intentos.");
System.out.println("El número secreto era: " + numeroSecreto);
}
// Es buena práctica cerrar el objeto Scanner
scanner.close();
}
}