2
respostas

O jogo não me da mais tentativas, onde estou errando?

Segue abaixo o código, quando rodo ele só me da uma tentativa em acertar o número quando na verdade deveria ser três.

JÁ RESOLVIDO

2 respostas

Olá , já foi resolvido? se n , manda aqui .

<meta charset="UTF-8">
<script>

    puloLinha = (numeroLinha) => {
        let puloLinha = "<br>"

        for (let i = 0; i < numeroLinha; i++) {
            document.write(puloLinha);
        }
    }

    mostra = (frase) => {
        document.write(frase);
        puloLinha(1);
    }

    let numeroPensado = Math.round(Math.random() * 10);
    let tentativas = 1;

    while (tentativas <= 3) {
        let numeroChute = parseInt(prompt("Insira o seu chute!"));
        if (numeroChute === numeroPensado) {
            mostra("Parabéns, você acertou e ganhou o título de Fera da adivinhação!");
            break;
        } else {
            mostra(`Infelizmente você não acertou! `);
        }
        tentativas++;
    }

    mostra("FIM!");

</script>

Olá, Levy. Atenção: com atualizações, o Google Chrome agora só mostra as mensagens através de document.write() realizadas dentro de um loop, somente quando a página for carregada completamente, isto é, quando o loop termina. Neste caso, para efeito de aprendizagem, utilizem alert() no lugar de document.write().

Assim ficou o meu código.

<meta charset="UTF-8">

<script>

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

    function mostra(frase) {
        alert(frase);
        pulaLinha();
    }

    var numeroPensado = Math.round(Math.random() * 10); // Math.round -> Arredonda os números | Math.random -> Gera números aleatórios
    console.log(numeroPensado) //Exibe o número pensado no console

    var tentativas = 1;

    while(tentativas <= 3) {

        var chute = parseInt(prompt("Digite seu chute."));

        if(chute == numeroPensado) {
            mostra("Você acertou!");
            break; // no caso de acerto o loop para mesmo que ainda restem tentativas.

        } else {
            mostra("Você errou!");

        }

        tentativas++; //ou tentativas = tentativas + 1

    }

    mostra("FIM");

</script>

Espero ter ajudado!