6
respostas

Onde está o erro do meu código?

Ele não mostra a mensagem após a tentativa falhar, ele pede 3x pra chutar e aparece as 3x "Que pena, você errou!" de uma vez só.. onde estou errando?

<meta charset="UTF-8">
<h1><center> Jogo da Adivinhação !</h1></center>

<script>

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

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


var numeroPensado = Math.round(Math.random() * 10);

var tentativas = 1

while(tentativas <= 3) {

    var chute = parseInt(prompt("Chute um numero de 0 à 10"));

    if(chute == numeroPensado) {

        mostra("<h3>Parabéns, você acertou! O numero pensado foi " + numeroPensado + "</h3>");
        break;

    } else {

        mostra("<h3>Que pena, você errou!</h3>");
    }

    tentativas++;
}

mostra("FIM");

</script>
6 respostas

Comigo também acontece isso kkk.

bati cabeca tentando achar mas nao achei o erro!!

Opa, acho que tá rolando alguma inconsistência com o prompt(), ao tentar carregar a página o navegador identifica o prompt() sendo chamado e não termina de carregar o resto do conteúdo enquanto as chamadas dele não terminarem. O que eu recomendaria neste caso seria mudar a função para mostrar que errou de mostra() para alert()

if (chute == numeroPensado) {

    mostra("<h3>Parabéns, você acertou! O numero pensado foi " + numeroPensado + "</h3>");
    break;

} else {

    alert("Que pena, você errou!");
}

Olá,

Aconteceu o mesmo comigo! Troquei por alert e funcionou!

Grata pela dica!

Caraca, demorei pra vir ao fórum, rs. Quebrei minha cabeça um tempão tentando achar o erro e não era meu.

Também queimei os neurônios tentando achar.... olhando pedaço por pedaço pensando que o erra era meu. kkk