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

Não gera número aleatório

Bom dia!

No final desta aula fui testar o código abaixo e percebi que o JavaScript com as funções Math.round e Math.random não está gerando números aleatórios e sim o mesmo número direto. O que pode ser?

<meta charset="utf-8">

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

<script type="text/javascript">

    function verifica() {

        if(segredo == input.value) {

            alert("Parabéns! Acertou o número!\n Segredo: " + segredo);

        }
        else {

            alert("Errou!\n Segredo: " + segredo);

        }

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

    var segredo = Math.round(Math.random() * 10);
    var input = document.querySelector("input") // Encontrar o elemento "input" dentro do HTML.
    input.focus();
    var button = document.querySelector("button"); // Encontrar o elemento "button" dentro do HTML.

    button.onclick = verifica;

</script>
2 respostas
solução!

Tenta assim:

<meta charset="utf-8">

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

<script type="text/javascript">

    function verifica() {
        if(segredo == input.value) {
            alert("Parabéns! Acertou o número!\n Segredo: " + segredo);
        } else {
            alert("Errou!\n Segredo: " + segredo);
        }

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

        geraSegredo(); // Gera outro segredo apos o click no botao
    }

    var segredo = 0; // inicializa o segredo
    function geraSegredo() {
        segredo = Math.round(Math.random() * 10);
    }
    geraSegredo(); // Gera o primeiro segredo ao carregar a tela (pra nao ser 0 sempre)

    var input = document.querySelector("input") // Encontrar o elemento "input" dentro do HTML.
    input.focus();
    var button = document.querySelector("button"); // Encontrar o elemento "button" dentro do HTML.

    button.onclick = verifica;

</script>

Muito obrigado, Ricardo! :D

Faltou eu criar nova função para gerar novos números!