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

Error en mi código

Hola! Mi código no funciona ya que sigue dando números iguales, los repite dentro del arreglo, me ayudarían a encontrar 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;
            if(numeroAleatorio!=0);{
                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 < secretos.length; posicion++) {

            if(secretos[posicion] == parseInt(input.value)) {
                alert("Usted acertó");
                encontrado = true;
                break;

            }

        }
        if(encontrado == false){

            alert("Usted erró");
        }

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

    }

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





</script>
1 respuesta

Hola, te paso el código corregido, solo era un par de detalles. un ";" en el if antes de las llaves y el otro, escribiste mal la palabra length en la funcion sortearNumeros(). Espero haberte ayudado, si es así, por favor califica mi respuesta en el foro, Saludos..

 function sortearNumeros(cantidad) {
            var secretos = [];
            var contador = 1;
            while(contador <= cantidad) {
                var numeroAleatorio = aleatorio();
                console.log(numeroAleatorio);
                var encontrado = false;
                if(numeroAleatorio!=0){
                    for(var posicion = 0; posicion < secretos.length; posicion++) {

                        if(numeroAleatorio == secretos[posicion]) {
                        encontrado = true;
                        break;
                        }
                }
                if(encontrado == false) {
                        secretos.push(numeroAleatorio);
                        contador++;
                    }

            }

        }
            return secretos;    
        }
`