// Variables let numeroMaximoPosible = 50; // Número secreto entre 1 y 50 let numeroSecreto = Math.floor(Math.random() * numeroMaximoPosible) + 1; let numeroUsuario = 0; let intentos = 1; let maximosIntentos = 6; // Número máximo de intentos permitidos
while (numeroUsuario != numeroSecreto) {
// Solicitar número al usuario
numeroUsuario = parseInt(prompt(Me indicas un número entre 1 y ${numeroMaximoPosible} por favor:
));
// Validar la entrada del usuario
if (isNaN(numeroUsuario) || numeroUsuario < 1 || numeroUsuario > numeroMaximoPosible) {
alert(`Por favor, ingresa un número válido entre 1 y ${numeroMaximoPosible}.`);
continue; // Vuelve al inicio del bucle sin contar el intento.
}
// Comparar el número ingresado con el número secreto
if (numeroUsuario == numeroSecreto) {
// Acertamos
alert(`¡Acertaste! El número es: ${numeroUsuario}. Lo hiciste en ${intentos} ${intentos == 1 ? 'vez' : 'veces'}.`);
} else {
// Indicar si el número secreto es mayor o menor
if (numeroUsuario > numeroSecreto) {
alert('El número secreto es menor.');
} else {
alert('El número secreto es mayor.');
}
// Incrementar el contador de intentos
intentos++;
// Verificar si se superó el número máximo de intentos
if (intentos > maximosIntentos) {
alert(`¡Agotaste tus ${maximosIntentos} intentos! El número secreto era: ${numeroSecreto}. ¡Mejor suerte la próxima vez!`);
break; // Salir del bucle
}
}
}
// Mensaje de despedida
if (numeroUsuario == numeroSecreto) {
alert(¡Felicidades! Has adivinado el número secreto en ${intentos} ${intentos == 1 ? 'intento' : 'intentos'}. ¡Gracias por jugar!
);
} else {
alert(¡Gracias por jugar! El número secreto era: ${numeroSecreto}. ¡Inténtalo de nuevo más tarde!
);
}