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

Proyecto final 1

let numeroMaximo = Math.floor(Math.random() * 100) + 1;
let numeroSecreto = Math.floor(Math.random() * numeroMaximo) + 1; // Genera un numero aleatorio entre 1 y 10
console.log(numeroSecreto);
let numeroUsuario = 0;
let intentos = 1;
let maxIntentos = Math.floor(Math.random() * 9) + 1;
console.log(`Tienes un maximo de ${maxIntentos} intentos`);

// let palabra = "intento";

while (numeroUsuario != numeroSecreto) {

    numeroUsuario = parseInt(prompt(`Me indicas un numero entre el 1 y el ${numeroMaximo}  por favor:`));
    console.log(numeroUsuario);

    // Este condicional comprueba si el numero introducido por el usuario es igual al numero secreto
    if (numeroUsuario === numeroSecreto) {
        alert(`Acertaste el numero es: ${numeroSecreto}, lo has conseguido en ${intentos} ${intentos == 1 ? "intento" : "intentos"}`);
    } else {
        if (numeroUsuario < numeroSecreto) {
            alert(`El numero secreto es mayor que: ${numeroUsuario}`);
        } else {
            alert(`El numero secreto es menor que: ${numeroUsuario}`);
        }
        intentos++;
        // palabra = "intentos";

        if(intentos == maxIntentos) {
            alert("Te queda un intento mas");
        }else if(intentos > maxIntentos) {
            alert("Has superado el numero de intentos, lo siento");
            break;
        }
    }

}






1 respuesta

Hola Zurisabdai, espero que estés bien

¡Qué interesante proyecto estás desarrollando! Veo que estás trabajando en un juego de adivinanza de números en JavaScript. Tu código parece bastante bien estructurado, pero he notado un pequeño error en el comentario que podría causar confusión. En la línea donde generas el número secreto, mencionas que el número aleatorio es entre 1 y 10, pero en realidad estás generando un número entre 1 y numeroMaximo. Aquí te dejo un ejemplo corregido:

let numeroMaximo = Math.floor(Math.random() * 100) + 1;
let numeroSecreto = Math.floor(Math.random() * numeroMaximo) + 1; // Genera un número aleatorio entre 1 y numeroMaximo

Aparte de eso, tu lógica para manejar los intentos y las pistas para el usuario está muy bien. Solo asegúrate de que el usuario entienda que el número máximo de intentos puede variar, ya que lo estás generando aleatoriamente también.

Si deseas mejorar la experiencia del usuario, podrías considerar agregar validaciones para asegurarte de que el número ingresado por el usuario esté dentro del rango permitido, es decir, entre 1 y numeroMaximo.

Espero que estas sugerencias te sean útiles. ¡Sigue adelante, estás haciendo un gran trabajo! Espero haber ayudado y ¡buenos estudios!