1
respuesta

Desafio - Lógica de programación

Solución propuesta

// Función principal para el juego de adivinar el número con máximo de 3 intentos
function adivinaElNumero() {
    alert("Bienvenido al juego de adivinar el número!");

    // Pedir al usuario el rango de números
    let inicio = prompt("Ingresa el número inicial del rango:");
    let fin = prompt("Ingresa el número final del rango:");

    // Validar y convertir los números ingresados
    inicio = parseInt(inicio);
    fin = parseInt(fin);

    // Verificar que los números ingresados sean válidos
    if (isNaN(inicio) || isNaN(fin) || inicio >= fin) {
        alert("Por favor, ingresa números válidos donde el inicial sea menor que el final.");
        return; // Salir de la función si los números no son válidos
    }

    // Generar un número aleatorio dentro del rango [inicio, fin]
    let numeroAleatorio = Math.floor(Math.random() * (fin - inicio + 1)) + inicio;
    
    console.log(`Número aleatorio generado: ${numeroAleatorio}`);

    let intentos = 0;
    let adivinanza;
    const maxIntentos = 3;

    // Iniciar el juego de adivinar con máximo 3 intentos
    while (intentos < maxIntentos) {
        intentos++;
        adivinanza = prompt(`Intento ${intentos}: Adivina el número entre ${inicio} y ${fin}:`);

        // Validar y convertir la adivinanza a número
        adivinanza = parseInt(adivinanza);

        // Verificar si la adivinanza es válida
        if (isNaN(adivinanza)) {
            alert("Por favor, ingresa un número válido.");
            continue; // Saltar esta iteración del bucle si no es un número válido
        }

        // Comparar la adivinanza con el número aleatorio
        if (adivinanza === numeroAleatorio) {
            alert(`¡Felicidades! Adivinaste el número ${numeroAleatorio} en ${intentos} intentos.`);
            return; // Salir del juego si adivinó correctamente
        } else if (adivinanza < numeroAleatorio) {
            alert("El número es mayor. Sigue intentando.");
        } else {
            alert("El número es menor. Sigue intentando.");
        }
    }

    // Si se agotaron los intentos
    alert(`Lo siento, has agotado tus ${maxIntentos} intentos. El número era ${numeroAleatorio}.`);
}

// Llamar a la función principal para iniciar el juego
adivinaElNumero();
1 respuesta

Hola, Omar,

Gracias por compartir tu código con nosotros. Recuerda que estamos aquí para ayudarte. Si necesitas ayuda, no dudes en buscarnos en el foro.

¡Gracias nuevamente!

Saludos,

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