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

[Proyecto] DESAFIO PROPUESTA DE SOLUCIÓN

Para solucionar el desafío, hice que el programa le pida al usuario un número mínimo y uno máximo. Esto permite que el usuario elija el rango en el que quiere jugar. Luego, el programa comprueba que el número mínimo sea menor que el máximo antes de seguir. Mientras el usuario intenta adivinar el número secreto, le da pistas sobre si su número es más grande o más pequeño. Así, el juego se siente más personalizado y fácil de usar, pero sigue siendo el mismo.

// Variables
let rangoMinimo = parseInt(prompt("¿Valor mínimo del rango?"));
let rangoMaximo = parseInt(prompt("¿Valor máximo del rango?"));
while (rangoMinimo >= rangoMaximo || rangoMinimo == null || rangoMaximo == null) {
    rangoMinimo = parseInt(prompt("Introduce un mínimo válido:"));
    rangoMaximo = parseInt(prompt("Introduce un máximo válido:"));
}

let numeroSecreto = Math.floor(Math.random() * (rangoMaximo - rangoMinimo + 1)) + rangoMinimo;
let numeroUsuario = 0;
let intentos = 1;
let maximosIntentos = 3;

while (numeroUsuario != numeroSecreto) {
    numeroUsuario = parseInt(prompt(`Intento ${intentos}: Ingresa un número entre ${rangoMinimo} y ${rangoMaximo}`));
    if (numeroUsuario < rangoMinimo || numeroUsuario > rangoMaximo || numeroUsuario == null) {
        alert(`Por favor, ingresa un número válido entre ${rangoMinimo} y ${rangoMaximo}.`);
        continue;
    }
    if (numeroUsuario == numeroSecreto) {
        alert(`Acertaste, el número es ${numeroUsuario}. Lo lograste en ${intentos} intento(s).`);
        break;
    } else {
        alert(`El número secreto es ${numeroUsuario > numeroSecreto ? 'menor' : 'mayor'}.`);
        intentos++;
        if (intentos > maximosIntentos) {
            alert(`Llegaste al límite de intentos. El número era ${numeroSecreto}.`);
            break;
        }
    }
}
1 respuesta

Hola! ¿Cómo estás?

¡Felicitaciones por el esfuerzo y dedicación que has puesto en tu código! Gracias por compartir tu trabajo con nosotros. Sigue así y no dudes en volver al foro si tienes alguna pregunta o dificultad.

¡Gracias nuevamente! Saludos,

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios!