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

DESAFIO FINAL

ESTA ES MI SUGERENCIA PARA HACERLO MAS DINAMICO

let rangoMax = prompt("Indica el numero maximo para el rango del juego");
let numeroSecreto = Math.floor(Math.random() * rangoMax)+1;
let numeroUsuario =0;
let intentos = 1;
let palabraVeces = 'veces';
let maximosIntentos = 3;


console.log(numeroSecreto)
while (numeroUsuario !=numeroSecreto){
numeroUsuario = prompt(`Me indicas un numero por favor entre 1 y ${rangoMax}:`);

console.log(typeof(numeroUsuario));

if (numeroUsuario == numeroSecreto) {
    alert(`Acertaste, el numero es: ${numeroUsuario}. Lo hiciste en ${intentos} ${intentos == 1 ? 'vez' : 'veces'}`);
}
else {
    if (numeroUsuario > numeroSecreto){
        alert('el numero secreto es menor');
        } else {
            alert('el numero secreto es mayor');
        }
        intentos = intentos + 1;
        palabraVeces = 'veces';
        if (intentos > maximosIntentos){
            alert(`Llegaste al numero maximo de ${maximosIntentos} intentos, el numero era ${numeroSecreto}`);
            break;
        }
    }
    }
1 respuesta

¡Hola Alejandro!

¡Qué buena idea hacer el juego más dinámico permitiendo al usuario definir el rango máximo! Tu código se ve bastante bien y es una excelente manera de practicar JavaScript.

Un par de sugerencias para mejorar la experiencia del usuario:

  1. Validación de entrada: Podrías agregar validaciones para asegurarte de que el usuario ingrese un número válido tanto al definir el rango máximo como al adivinar el número. Puedes usar un bucle while para seguir pidiendo la entrada hasta que sea válida.

    let rangoMax;
    do {
        rangoMax = parseInt(prompt("Indica el número máximo para el rango del juego"));
    } while (isNaN(rangoMax) || rangoMax <= 0);
    
  2. Convertir la entrada del usuario: Al obtener el número del usuario, asegúrate de convertirlo a un número entero para evitar problemas de comparación.

    numeroUsuario = parseInt(prompt(`Me indicas un número por favor entre 1 y ${rangoMax}:`));
    
  3. Mensajes más claros: Podrías mejorar los mensajes para hacerlos más claros o informativos, por ejemplo, indicando cuántos intentos le quedan al usuario.

    alert(`El número secreto es menor. Te quedan ${maximosIntentos - intentos} intentos.`);
    

Estas pequeñas mejoras pueden hacer que el juego sea más robusto y amigable para el usuario. Espero que estas sugerencias te sean útiles.

¡Espero haber ayudado y buenos estudios!

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