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

Exercício Jogo Adivinha

Pessoal, boa tarde.

Também tive este problema neste exercício, onde as mensagens de erro eram mostradas todas de uma vez ao invés de individualmente.

Consultando outras respostas, optei também por mudar a mensagem de mostra para alert. Desta forma ficou individual.

Aproveitei também para incluir a informação do número escolhido, após as três tentativas de erro. Segue abaixo:

<meta charset="UTF-8">

<script>

function pulalinha() {

    document.write("<br>");    
    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("Digite seu chute!"));

    if(chute == numeroPensado) {

        alert("Você ACERTOU, o número pensado era " + numeroPensado);
        break;

    } else {

        alert("Você ERROU!");

    }


tentativas++;

}    

if(chute != numeroPensado) {

    alert("Você ERROU, o número pensado era " + numeroPensado);

    }        

alert("FIM!");


</script>
2 respostas
solução!

Daniel, boa tarde!

Outra forma de fazer seria determinar uma variável e verificar como está o status dela após todo o while e se ela estiver setada como verdadeira significa que o usuário errou todas as vezes, caso ele acerte só é preciso sair do loop, exemplo

<meta charset="UTF-8">

<script>

function pulalinha() {
    document.write("<br>");
    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("Digite seu chute!"));
    var acerto = false;
    if(chute == numeroPensado) {
        mostra("Você ACERTOU, o número pensado era " + numeroPensado);
        acerto = true;
        break;
    } else {
        acerto = false;
    }
    if (acerto == false){
      mostra("Voce errou!");
    }
tentativas++;
}
if(chute != numeroPensado) {
    alert("Você ERROU, o número pensado era " + numeroPensado);
    }
alert("FIM!");


</script>

legal, obrigado

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software