1
resposta

Quando faço o programa adivinha_mais.html diz que a tag </script> está errada

<meta charset="UTF-8">

<input/>
<button>Compare com o meu segredo</button>

<script>

    var segredos = [2,7,5,10];

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

     function verifica() {

         var achou = false 

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

            if(input.value == segredos[posicao]) {

                     alert("VOCÊ ACERTOU!");
                     achou = true;
                     break;
            }
         }    
     }

    if(achou == false) {

        alert("VOCÊ ERROU !!!!!!!");
    }
    var button = document.querySelector("button");

     button.onclick = verifica;

</script>
1 resposta

Olá, Thamires. Tudo bem?

Agradeço por aguardar uma resposta.

Acredito que para seu programa funcionar da forma como deseja, a sua estrutura de decisão if(achou == false) deve ficar dentro da função verifica().

Dessa forma:

<meta charset="UTF-8">

<input/>
<button>Compare com o meu segredo</button>

<script>

    var segredos = [2,7,5,10];

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

     function verifica() {

         var achou = false 

         for(var posicao = 0; posicao < 4; posicao++) {
            if(input.value == segredos[posicao]) {
                alert("VOCÊ ACERTOU!");
                achou = true;
                break;
            }
         }    

        if(achou == false) {
            alert("VOCÊ ERROU !!!!!!!");
        }
     }

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

     button.onclick = verifica;

</script>

Antes esta estrutura estava fora do escopo da função verifica(), e este if precisava realizar uma verificação variável, achou, porém esta variável ainda não tinha sido definida.

Vale lembrar que a função verifica() só é chamada em:

  button.onclick = verifica;

Ou seja, a variável achou só é definida após esta chamada de método.

Espero ter ajudado, bons estudos =)

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓