Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
1
respuesta

[Duda] No muestra el mensaje al sortear todos los numeros

agradeceria su ayuda del porque no muestra el mensaje al hacerl los 10 intentos


let numeroMaximo = 10;
let listaNumerosSorteados = [];
let numeroSecreto = generarNumeroSecreto();
let intentos = 1;



console.log(numeroSecreto);

function asignarTextoElemento(elemento, texto) {
    let elementoHTML = document.querySelector(elemento);
    elementoHTML.innerHTML = texto;
    return;
}

function verificarIntento() {
    let numeroUsuario = parseInt(document.getElementById('valorUsuario').value);
    
    if (numeroSecreto === numeroUsuario){
        asignarTextoElemento('p', `Felicidades el numero es correcto, lo hiciste en ${intentos} ${(intentos === 1) ? 'intento' : 'intentos' }`);
        document.getElementById('reiniciar').removeAttribute('disabled');
    } else {
        if(numeroUsuario > numeroSecreto){
            asignarTextoElemento('p', 'El numero debe ser menor');
        } else {
            asignarTextoElemento('p', 'El numero debe ser mayor');
        }
        intentos++;
        limpiarCaja();
    }
    return;
}

function limpiarCaja(){
    document.querySelector('#valorUsuario').value = '';
}

function condicionesIniciales(){
    asignarTextoElemento('h1', 'Juego del número secreto!');
    asignarTextoElemento('p', `Introduce un número del 1 al ${numeroMaximo}`);
    numeroSecreto = generarNumeroSecreto();
    intentos = 1;
}

function reiniciarJuego(){
    limpiarCaja();
    condicionesIniciales();
    document.querySelector('#reiniciar').setAttribute('disabled', 'true');
}

function generarNumeroSecreto() {
   let numeroGenerado = Math.floor(Math.random()*numeroMaximo)+1;

   console.log(numeroGenerado);
   console.log(listaNumerosSorteados);
   //si ya sorteamos los numeros
   if (listaNumerosSorteados == numeroMaximo) {
        asignarTextoElemento('p','todos los numeros posibles fueron sorteados');
   } else {
        if(listaNumerosSorteados.includes(numeroGenerado)){
            return generarNumeroSecreto();
        } else {
            listaNumerosSorteados.push(numeroGenerado);
            return (numeroGenerado);
        }
   }
}

condicionesIniciales ();
1 respuesta
solución!

En la última function llamada generarNumeroSecreto la condicional está mal planteada tienes

if (listaNumerosSorteados == numeroMaximo) {
        asignarTextoElemento('p','todos los numeros posibles fueron sorteados');
}

y debería ser

if (listaNumerosSorteados.length == numeroMaximo) {
        asignarTextoElemento('p','todos los numeros posibles fueron sorteados');
}

ya que listaNumerosSorteados se refiere a la lista completa, por otro lado listaNumerosSorteados.length hace referencia a la cantidad de elementos que tiene la lista en su interior.