Para hacer que el juego funcione con diferentes rangos de números, como entre 1 y 100 o 1 y 1000, se deben realizar algunos cambios en el código para permitir que el rango sea dinámico y pueda ser definido por el usuario. Aquí están los pasos necesarios para implementar esta funcionalidad:
Cambios necesarios:
- Necesitamos solicitar al usuario los valores mínimo y máximo para definir el rango.
- Ajustar la fórmula de generación de números aleatorios para que funcione con cualquier rango.
- Asegurarse de que los mensajes al usuario reflejen el rango definido.
Código actualizado:
// Solicitar al usuario los valores mínimo y máximo para el rango
let minimo = parseInt(prompt("Ingresa el valor mínimo del rango:"));
let maximo = parseInt(prompt("Ingresa el valor máximo del rango:"));
// Generar un número secreto aleatorio dentro del rango definido
let numeroSecreto = Math.floor(Math.random() * (maximo - minimo + 1)) + minimo;
let numeroUsuario = 0;
let intentos = 1;
let maximosIntentos = 3;
while (numeroUsuario != numeroSecreto) {
// Pedir al usuario un número dentro del rango definido
numeroUsuario = parseInt(prompt(`Me indicas un número entre ${minimo} y ${maximo} por favor:`));
console.log(typeof(numeroUsuario));
if (numeroUsuario == numeroSecreto) {
// Acertamos, fue verdadera la condición
alert(`Acertaste, el número es: ${numeroUsuario}. Lo hiciste en ${intentos} ${intentos == 1 ? 'vez' : 'veces' }`);
} else {
if (numeroUsuario > numeroSecreto) {
alert('El número secreto es menor');
} else {
alert('El número secreto es mayor');
}
// Incrementamos el contador cuando no acierta
intentos++;
if (intentos > maximosIntentos) {
alert(`Llegaste al número máximo de ${maximosIntentos} intentos`);
break;
}
}
}