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

Desafío: juego de adivinación

import java.util.Scanner;

public class JuegoAdivinanza {

public static void main(String[] args) {



    int numeroAleatorio=(int) (Math.random()*100)+1;
    int cont=0;

    Scanner re=new Scanner(System.in);
    String mensajePrincipal= """
            Juego de adivinanza.
            Sr Usuario, ingrese un valor numerico entre 1 - 100
            Solo se aceptan valores numericos y positivos.
            Buena suerte.
            """;


    System.out.println(mensajePrincipal);
    System.out.println(numeroAleatorio);


    do {
        System.out.println("INGRESE UN NUMERO: ");
        int valorIngresado =re.nextInt();


    if(valorIngresado >0 && valorIngresado <=100) {


        cont++;

        if (valorIngresado == numeroAleatorio) {
            System.out.println();
            System.out.println("FELICIDADES A GANADO!");
            System.out.println("TOTAL INTENTOS: " + cont);
            break;

        }
        else
        {

            String msj= valorIngresado>numeroAleatorio?msj=("MENOR"):("MAYOR");
            System.out.println();
            System.out.println("INTENTO FALLIDO!");
            System.out.println("EL NUMERO INGRESADO DEBE SER "+ msj);

            if(cont==5){
                    System.out.println();
                    System.out.println("LO SIENTO HA PERDIDO :(");

            }

        }



    }
    else{
        System.out.println();
        System.out.println("INGRESE VALORES POSITIVOS, NO SE CONTABILIZARA INTENTO.");

    }


    }while(cont<5);



}

}

1 respuesta

¡Hola Luciano, espero que estés bien!

Tu código para el juego de adivinanza se ve bastante bien y parece que está casi completo. Sin embargo, hay un pequeño detalle que podría mejorarse para que el juego funcione como se espera según las instrucciones del desafío.

Según el contexto del ejercicio, el número aleatorio debe ser generado entre 0 y 100, pero en tu código lo estás generando entre 1 y 100. Para corregir esto, puedes cambiar la línea donde generas el número aleatorio:

int numeroAleatorio = (int) (Math.random() * 101);

Esto asegurará que el número aleatorio pueda ser 0, lo cual es parte del rango esperado.

Además, en la parte donde defines el mensaje para indicar si el número debe ser mayor o menor, puedes simplificarlo un poco:

String msj = valorIngresado > numeroAleatorio ? "MENOR" : "MAYOR";

Con estos pequeños ajustes, tu juego debería funcionar correctamente de acuerdo con las instrucciones del desafío.

Espero haber ayudado y buenos estudios!