Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

codigo com erro

não consigo fazer com que a condição deixe o usuario tentar mais de 1 vez quando erra , o que tem de errado ?

<meta charset="UTF-8">


<input/>
<button>Compare</button>



<script>

    var segredos = [3,5,2]

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

    function verifica() {

        for(posicao = 0 ; posicao < 2 ; posicao++){


            if(input.value == segredos[posicao]) {
                alert("você acertou")
            } else{
                alert("você errou")

            }

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

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

    button.onclick = verifica;

</script>
2 respostas
solução!

Olá Pedro!

Tenta dessa forma:

<meta charset="UTF-8">


<input/>
<button>Compare</button>



<script>

    var segredos = [3,5,2];


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

    function verifica() {

        var acertou = false;

        for(posicao = 0 ; posicao < segredos.length; posicao++){
            if(input.value == segredos[posicao]){
                acertou = true;
            }
        }

        if(acertou){
            alert("ACERTOU!!");
        } else{
            alert("ERRRROOOU!");
        }


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

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

    button.onclick = verifica;

</script>

Aqui pode estar o erro: "posicao < 2". O único inteiro menor que 2 é 1 . Sua instrução é de somente uma tentativa.