1
resposta

Não aparece na tela

<meta charset="UTF-8">

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

<script>


    function sorteia() {

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

    function sorteiaNumeros(quantidade) {

        var segredos = [];

        var numero = 1;

        while(numero <= quantidade)  {

            var numeroAleatorio = sorteia();

            if(numeroAleatorio !== 0) {
            var achou = false

            for(var posicao = 0; posicao < segredos.length; posicao = posicao + 1) {

                if(segredos[posicao] == numeroAleatorio) {
                    achou = true;
                    break;
                }

            }

            }

            if (achou == false) {
            segredos.push(numeroAleatorio);
            numero = numero + 1;


            }

        }

        return segredos;

    }

    var segredos = sorteiaNumeros(3);

    console.log(segredos);

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

    function verifica() {

        var achou = false;
        for(var posicao = 0; posicao < segredos.length; posicao = posicao + 1) {

            if(input.value == segredos[posicao]) {
            alert("Você ACERTOU!");
            achou = true;
            break;

        }

    }

    if(achou == false) {

    alert("Você errou!");

    }

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

}

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



</script>


Pessoal, essa foi a atividade para introduzir números aleatórios no array sem que ele se repetisse. Efetuei o código conforme a aula, mas não está imprimindo na tela. Não estou conseguindo achar o erro pelo console também.

1 resposta

Boa noite, Katia! Como vai?

Vc esqueceu do return dentro da função sorteia(). O correto seria fazer assim:

function sorteia() {

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

Qualquer coisa é só falar!

Grande abraço e bons estudos, minha aluna!