Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

adivina numero

public static void main(String[] args) {

int contador = 0;
int numeroAleatorio = 0;
int numeroIngresado = 0;

Scanner input = new Scanner(System.in);
numeroAleatorio = new Random().nextInt (100);
while (contador <= 4) {
    System.out.println("Ingresa un número: ");
    numeroIngresado = input.nextInt();
    if (numeroIngresado == numeroAleatorio) {
        System.out.println("Felicidades, tu número: " + numeroIngresado + " es igual al número aleatorio: " + numeroAleatorio);
        break;
    } else {
        if (numeroIngresado < numeroAleatorio) {
            System.out.println("El número ingresado es menor que el número aleatorio, intenta de nuevo");
        }else {
            System.out.println("El número ingresado es mayor que el número aleatorio, intenta de nuevo");
        }
        contador++;
        if (contador == 5) {
            System.out.println("Este fue tu último intento");
        }
    }
}

}

1 respuesta

¡Hola Omar, espero que estés bien!

Parece que estás trabajando en un juego de adivinanzas en Java, ¡qué emocionante! Tu código se ve bastante bien y parece que estás en el camino correcto. Sin embargo, hay un pequeño ajuste que podrías considerar para que el juego funcione exactamente como se espera.

En tu bucle while, estás controlando los intentos con la variable contador. Actualmente, permites hasta 5 intentos, pero el mensaje "Este fue tu último intento" se muestra después del quinto intento, lo cual podría ser un poco confuso. Para que el mensaje se muestre correctamente al final del quinto intento, podrías mover la verificación de contador == 5 fuera del else y justo después de incrementar el contador:

while (contador < 5) {
    System.out.println("Ingresa un número: ");
    numeroIngresado = input.nextInt();
    if (numeroIngresado == numeroAleatorio) {
        System.out.println("Felicidades, tu número: " + numeroIngresado + " es igual al número aleatorio: " + numeroAleatorio);
        break;
    } else {
        if (numeroIngresado < numeroAleatorio) {
            System.out.println("El número ingresado es menor que el número aleatorio, intenta de nuevo");
        } else {
            System.out.println("El número ingresado es mayor que el número aleatorio, intenta de nuevo");
        }
        contador++;
        if (contador == 5) {
            System.out.println("Este fue tu último intento");
        }
    }
}

Este ajuste asegura que el mensaje "Este fue tu último intento" se muestre correctamente después del quinto intento. Además, cambié la condición del while a contador < 5 para que el bucle se detenga después de 5 intentos.

Espero que esto te ayude a mejorar tu programa. ¡Sigue adelante con tus estudios de Java!

Espero haber ayudado y buenos estudios!