3
respostas

Jogo Adivinha diferente

Removido a pedido do usuario.
3 respostas

Olá Andre, você se esqueceu de postar o código rs

Removido a pedido do usuario.

Andre, eu alterei um pouco o seu código e fiz o seguinte:

<meta charset="UTF-8">

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

    function mostra(frase){

        document.write(frase);
        pulaLinha();
    }


    var numeroPensado = Math.round(Math.random()*10);
    var tentativas = 1;
    var acertou = false;

    while (tentativas <= 3){

        var chute = parseInt(prompt("Qual seu chute? "));

        if (chute == numeroPensado){
            mostra("Acertou mizeravi, o número era "+ numeroPensado);
            acertou = true;

            break;
        }

        tentativas++;
    }

    if(acertou == false) {
        mostra("Errou, o número pensado era "+numeroPensado);
    }

    mostra("FIM");
</script>

No seu código, quando o while executa, você pergunta ao usuário 3 vezes qual o seu chute, pois são as 3 chances que ele tem. Mas, você tem que perceber que, quando você exibe uma alerta, a página em si não altera. Ou seja, se usuário errar chute, não vai aparecer na página que ele errou, e depois pedir um chute novamente. Isso só vai acontecer depois que ele ter errado as 3 vezes (ou seja, terminado de exibir os alertas), e mostra a mensagem de erro 3 vezes seguidas também.

Portanto, eu removi o seu else dentro do while, e criei uma variável chamada acertou, que obviamente serve pra dizer se o jogador acertou ou não o chute. Fora do while, eu fiz um if, pra saber se o usuário errou ( acertou == false). Dessa forma, a mensagem que o usuário errou o chute, será exibida somente uma vez, e isso depois dele ter tentado as 3 vezes.

Porém, caso você desejar que exiba uma mensagem que o usuário errou o chute, você pode trocar esse mostra dentro do seu else para um alert. Assim sempre que o usuário errar, vai mostrar que o chute está errado, e logo em segui pedirá um chute novo.

Isso depende como você quer que seu código fique. Espero ter ajudado. Se ainda estiver com alguma dúvida, por favor pergunte =)