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

Desafio

Esta es mi propuesta: import java.util.Random; import java.util.Scanner;

public class Desafio Adivina numero {

public static void main(String[] args) {
    Scanner teclado = new Scanner(System.in);
    int intentos = 0;
    int numeroAleatorio = new Random().nextInt(100);

    while (numeroAleatorio <=5);
    System.out.println("Ayudame con un numero porfavor entre 0 y 100");
    int numeroUsuario =  teclado.nextInt();
    intentos++;

    if (numeroUsuario == numeroAleatorio) {
        System.out.println("¡Felicidades! ¡Adivinaste el número!");
        Break;
    } else if (numeroUsuario < numeroAleatorio) {
        System.out.println("El número secreto es mayor.");
    } else {
        System.out.println("El número secreto es menor.");
    }

    if (intentos == 5) {
        System.out.println("❌ Has alcanzado el número máximo de intentos.");
        System.out.println("El número secreto era: " + numeroAleatorio);
    }
    teclado.close();
}

}

1 respuesta

¡Hola Estudiante, espero que estés bien!

Gracias por compartir tu código. Veo que estás trabajando en un juego de adivinanzas en Java. Hay algunos detalles en tu código que podrías ajustar para que funcione correctamente:

  1. Nombre de la clase: El nombre de la clase no debe tener espacios. Puedes cambiarlo a DesafioAdivinaNumero.

  2. Bucle while: La condición del bucle while no está correctamente configurada. Actualmente, tienes while (numeroAleatorio <=5);, lo que hace que el bucle no se ejecute como esperas. Deberías usar un bucle while que permita al usuario hacer varios intentos hasta que adivine el número o alcance el límite de intentos. Aquí tienes un ejemplo de cómo podría ser:

    while (intentos < 5) {
        System.out.println("Ayúdame con un número por favor entre 0 y 100");
        int numeroUsuario = teclado.nextInt();
        intentos++;
    
        if (numeroUsuario == numeroAleatorio) {
            System.out.println("¡Felicidades! ¡Adivinaste el número!");
            break;
        } else if (numeroUsuario < numeroAleatorio) {
            System.out.println("El número secreto es mayor.");
        } else {
            System.out.println("El número secreto es menor.");
        }
    
        if (intentos == 5) {
            System.out.println("❌ Has alcanzado el número máximo de intentos.");
            System.out.println("El número secreto era: " + numeroAleatorio);
        }
    }
    
  3. Uso de break: Asegúrate de que break; esté en minúsculas para salir correctamente del bucle cuando el usuario adivine el número.

Con estos ajustes, tu programa debería funcionar como esperas. Espero que esto te ayude a seguir avanzando en tu aprendizaje de Java. ¡Espero haber ayudado y buenos estudios!