Solucionado (ver solución)
Solucionado
(ver solución)
3
respuestas

No visualiza "usted erró"

Por favor me podrían guiar, no visualiza "usted erro" al momento de insertar un número equivocado

<meta charset="UTF-8">

<input/>
<button>verificar si acerto con el secreto</button>


<script>

    function aleatorio() {

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

    function sortearNumeros(cantidad) {

        var secretos = [];
        console.log(numeroAleatorio); 
        var contador = 1

        while(contador<=cantidad) {
            var numeroAleatorio = aleatorio();
            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

    }


    var secretos = sortearNumeros(4);

    secretos.push(aleatorio);


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

    function verificar() { 

        var encontrado = false

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

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

                alert("usted acertó");
                var encontrado = true
                break;
            }

             if(encontrado = false) {

                alert("usted erro")

            }


        }

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

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


</script>
3 respuestas

Hola Esmeralda. En "function verificar()", el "if(encontrado = false)" tiene que ir fuera de la estructura for. Saludos

Esmeralda,

He revisado tu código, si bien, hay algunas líneas de código que sobran y es posible que por eso no te funcionara, si bien, te voy a compartir tu código, pero te pido que lo compares con el tuyo para que te des cuenta de los cambios, y así puedas darte cuenta que fue lo que paso:

<script>

        function aleatorios() {
            return Math.round(Math.random() * 10);
        }
        function sortearNumero(cantidad) {
            var secretos = [];
            var contador = 1;
            while (contador <= cantidad) {
                var numeroAleatorio = aleatorios();
                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 secreto
        }

        var secretos = sortearNumero(4);
        var input = document.querySelector("input");

        function verificar() {
            var encontrado = false;
            for (var posicion = 0; posicion < secretos.length; posicion++) {
                if (parseInt(input.value) == secretos[posicion]) {
                    alert("Usted acertó");
                    encontrado = true;
                    break;
                } 
                if (encontrado == false) {
                    alert("Usted erro");
                    break;
                }
            }
            input.value = "";
            input.focus();
        }

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

    </script>

Espero que te funciones.

Saludos...

solución!

Hola Esmeralda, por lo que vi al final de tu código :

 if(encontrado = false) {

                alert("usted erro")

            }

donde en el if (encontrado "==" false) falta un "igual" mas.