Mi solución para resolver el desafio de adivina el número del 1 al 100, fue la siguiente: Me puse a pensar y que adivinar un numero dentro de ese rango sería demasiado difícil para una persona, ya que son 1 entre 100 posibilidades, entonces cambié la forma de darle pistas al usuario, en vez de decir si el numero ingresado era incorrecto y el número secreto es "mayor" o "menor", lo que hice fue crear un rango determinado aleatoriamente para darle una pista al usuario Eh aquí el código:
let numeroSecreto = Math.floor(Math.random()*100);
let numeroUsuario = 0;
let intentos = 1;
let maxIntentos = 5;
/*Estas variables fueron hechas para mostrar el rango en el que se encuentra el numero Secreto
Ya que sería muy dificil adivinar un numero de 1 al 100, para tener un rango de referencia*/
let numeroAleatorio = Math.floor(Math.random()*numeroSecreto);
let valorTope = 0;
let valorMinimo = 0;
while(numeroUsuario != numeroSecreto)
{
//Aquí se opera el numero secreto con el numero aleatorio para crear los rangos aleatoriamente
valorTope = numeroSecreto+numeroAleatorio;
valorMinimo = numeroSecreto-numeroAleatorio;
/*Estos condicionales los hice por si se daba la situación que la resta o suma de los rangos fueran menores a 0
o mayores a 100 respectivamente*/
if(valorMinimo <=0){
valorMinimo = 1;
}
if(valorTope >=100){
valorTope = 100;
}
if(valorMinimo == valorTope){
valorMinimo = valorMinimo+3;
valorTope = valorTope+3;
}
numeroUsuario = parseInt(prompt("Ingresa un numero del 1 al 100"));
if(numeroUsuario == numeroSecreto)
{
alert("Felicidades, adivinaste el número!");
}else{
//Aquí eliminé si un numero era mayor o menor, para solo mostrar el rango del numero secreto
if(numeroUsuario != numeroSecreto){
alert(`Fallaste, el numero secreto está entre: ${valorMinimo} y ${valorTope}`);
}
}
intentos++;
/*cuando se alcance los dos intentos, se le restará 10 al numero aleatorio para reducir el rango y sea mas
facil resolverlo*/
if(intentos > 2)
{
numeroAleatorio = numeroAleatorio-10;
}
if(intentos > maxIntentos)
{
alert(`Lo siento, alcanzaste el máximo de ${maxIntentos} intentos,`);
break;
}
}