1
resposta

Jogo adivinha com array sem repetições de números

<meta charset="UTF-8">

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

<script>

    function pulaLinha() {
        document.write("<br><br>");
    }

    function mostra(frase) {
        document.write(frase);
        pulaLinha();
    }

    function sorteia() {
        var numeroSorteado = Math.round(Math.random() * 10);
        return numeroSorteado;
    }

    function sorteiaNumero(n) {

        var segredos = [];
        var numero = 1; 

        while (numero <= n) {

            var numAleatorio = sorteia();

            if(numAleatorio !== 0) {
                var achou = false;

                for(var posicao = 0; posicao < segredos.length; posicao++ ) {
                    if(segredos[posicao] == numAleatorio){
                        achou = true;
                    break;
                    }
                }

                if(achou == false) {
                    segredos.push(numAleatorio);
                    numero++;
                }    
            }                
        }
        return segredos;
    }

    function verifica() {
        var achou = false;
        for(var posicao = 0; posicao < numeroPensado.length; posicao ++) {
            if (entrada.value == numeroPensado[posicao]) {
                alert("Você ACERTOU!");
                achou = true;
                break;
            } 
        }

        if(achou == false) {
            alert("Você ERROU!");
        }        

        // limpa campo de entrada
        entrada.value = "";

        // coloca o cursor de volta no campo de entrada e destaca
        entrada.focus(); 

    }

    //substitui por valores em array gerados em função com random
    var numeroPensado = sorteiaNumero(5) ;

    // para ver o numero apenas no console de desenvolvedor do navegador
    console.log(numeroPensado);

    // pega a informacao da tag input
    var entrada = document.querySelector("input");

    // coloca o cursor no campo de entrada e destaca
    entrada.focus(); 

    // pega o botao
    var botao = document.querySelector("button");

    // o onclick é o mesmo que "ao clicar", e passando a funcao sem os parenteses, é como se pegasse o códido e só executasse ao clicar no botao, e nao chamar a função para executar somente.
    botao.onclick = verifica;

</script>
1 resposta

Olá, Sandy!

Perfeito!

Continue assim!

Um abraço e bons estudos!!!