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

Não consigo consertar o problema! ajuda!!

<meta charset="UTF-8">

<input/>

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


<script>


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

function sorteiaNumeros( quantidade) {
    var segredo = [];

    var numero = 1;

    while( numero <= quantidade) {
        var numeroAleatorio = sorteia();

        if(numeroAleatorio !== 0) {


        var achou = false;

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

        if( segredos[ posicao] == numeroAleatorio) {

            achou = true;

            break;
        }    
        }

        if( achou == false) {

            segredos.push(numeroAleatorio);
            numero++;
        }
    }
}

return segredos;

}


var segredos = sorteiaNumeros(5);
console.log(segredos);


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


function verifica() {

    var achou = false;

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

        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>
4 respostas
solução!

Fala, Fernando! Tudo bem contigo?

O problema ocorreu, pois na variável dentro da função sorteiaNumerosestá faltando a letra s

var segredo = [];

Feito essa alteração, é só rodar!!!

Um abraço e bons estudos, Fernando!

Obrigado!!! 1 dia inteiro olhando para o problema!!! rs

Acontece muito, Fernando!!! rs

Qualquer dúvida, nos procure!

Um abraço!

A var foi declarada no singular, e no decorrer do programa você utilizou no plural, se você acrescentar o s ou excluir acredito que resolva. Espero ter ajudado. ^_^

var segredo = [];
ou
var segredos=[];