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

[Duda] AYUDAAA!! No funciona mi código.

Anteriormente había definido estos valores en el array: [2,5,8,1,3,9,4], pero ahora que intento hacerlo como la clase, no se por que, no puedo generar los valores aleatorios. Siempre tengo que ingresar esos numeros y me dice si ACERTÉ o si FALLÉ, pero no genera los numeros aleatorios. Aparte de que no se ve los números que genero en la consola de Chrome asi como se muestra en la clase.

Les comparto mi código:

<meta charset="UTF-8">

<input/>
<button>Verificar</button>


<script>

    function aleatorio(){

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

    }

    function numerosSorteados(cantidad){
        var caja = [];
        var contador = 1;

        while(contador <= cantidad){

            numeroGenerado = aleatorio();
            caja.push(numeroGenerado);
            contador++;

        }

        return caja

    }

    var secretos = numerosSorteados(4);
    console.log(caja);

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

    function verificacion(){

        var encontrado = false;

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

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

                alert("¡¡¡ACERTASTE!!!");
                encontrado = true;
                break;

            }

        }

        if (encontrado == false) {

                alert("¡¡¡FALLASTE!!!");

            }


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

    }


    var boton = document.querySelector("button");
    boton.onclick = verificacion;



</script>
5 respuestas

Creo que es porque en console.log(caja) le estas pasando la variable que usas en la función, debes pasarle la que asignaste numerosSorteados(4) entonces intenta cambiarlo por console.log(secretos);

yo tengo el mismo problema me dice Nan

solución!

Hola, acabo de ver tu código y reemplace la variable "caja" por "secretos" y funcionó bien. Te lo dejo por aqui asi lo ves bien después y revisas de paso el error. Un saludo!

<meta charset="UTF-8">

<input/>
<button>Verificar</button>


<script>

    function aleatorio(){

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

    }

    function numerosSorteados(cantidad){
        var secretos = [];
        var contador = 1;

        while(contador <= cantidad){

            numeroGenerado = aleatorio();
            secretos.push(numeroGenerado);
            contador++;

        }

        return secretos;

    }

    var secretos = numerosSorteados(4);
    console.log(secretos);

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

    function verificacion(){

        var encontrado = false;

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

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

                alert("¡¡¡ACERTASTE!!!");
                encontrado = true;
                break;

            }

        }

        if (encontrado == false) {

                alert("¡¡¡FALLASTE!!!");

            }


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

    }


    var boton = document.querySelector("button");
    boton.onclick = verificacion;



</script>

buenas tardes !!! como dicen los compañeros el error esta en la linea donde pones console.log(caja) ya que invocas una función que solo existe dentro de la funcion numeroSorteado , por lo que por fuera de esa funcion no existe por lo cual te va a tirar error o como dijo otro compañero te arroja "non ",pero cambiando console.log(caja ) por console.log(secretos) tendria que funcionar , espero haberte ayudado, saludos!!!

Muchisimas gracias!!!. En efecto, como decia NICOLAS, estaba invocando una variable que solo existe dnetro de la funcion numerosSorteados. A todos los demas de igual forma, muchas gracias. Esta comunidad es genial, siempre me ayudan..

GRACIAAASSS!!!