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)
3
respuestas

[Duda] Ayuda!!! en el proyecto juego_secretoV3 me siguen saliendo los numeros aleatorios repetidos y no encuentro el error...

<meta charset="UTF-8">

<input/>

<button> verificar si acertó con el secreto!!! </button>


<script>

    function aleatorio(){

        return Math.round(Math.random()*10);
    }

    function sortearNumeros(cantidad){

        var secretos = [];
        var contador = 1;

        while(contador <= cantidad){

            var numeroAleatorio = aleatorio();
            console.log(numeroAleatorio);
            var encontrado = false;
            for (var posicion = 0; posicion < secretos.lenght; posicion++){

                if (numeroAleatorio == secretos[posicion]){
                    encontrado = true;
                    break;
                }
            }

            if (encontrado == false){
                secretos.push(numeroAleatorio);
                contador++;
            }            
        }

        return secretos;
    }

    var secretos = sortearNumeros(4);

    console.log(secretos);

    var input = document.querySelector("input");
    input.focus();

    function verificar(){

        var encontrado = false;

        for (var posicion = 0; posicion < 4; posicion++) {

            if(parseInt(input.value) == secretos[posicion]){

            alert("ústed acertó");
            encontrado = true;
            break;
           }
        }

        if (encontrado == false){

            alert("ústed erró");
        }    

    input.value = "";
    input.focus();
    }

    var button = document.querySelector("button");
    button.onclick = verificar

</script>
3 respuestas
solución!

Encontre el error, solo es un problema con la escritura

Asi es como lo tenias escrito

for (var posicion = 0; posicion < secretos.lenght; posicion++){

                if (numeroAleatorio == secretos[posicion]){
                    encontrado = true;
                    break;
                }
            }

El parametro de length esta mal escrito

for (var posicion = 0; posicion < secretos.length; posicion++){ //habia un error al escribir length, tenias "lenght"

                    if (numeroAleatorio == secretos[posicion]){
                        encontrado = true;
                        break;
                    }
                }

Cambiar el orden de las letras deberia solucionar el problema

Muchas gracias Eduardo, me salvaste el día!

Para eso estamos compañero =D