4
respostas

Help! a mensagem de erro só aparece no final de tudo. Não sei pq!

Pessoal, meu código está igual ao do professor, mas não funciona da mesma forma. Alguém sabe o motivo e como modificar?

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

    function mostrar(imprimirNaTela) {
        document.write("<h1>" + "***" +  imprimirNaTela  + "***" + "</h1>");
    }

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


    while(tentativas <= 3) {

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

        if(chute == numeroPensado) {


            mostrar("vc acertou! o número sorteado era " + numeroPensado);
            break; //quebra a continuidade do loop.

        } else {
          mostrar("Errouuuuu!");
        }

        tentativas++;
    }

    mostrar("FIM");





</script>
4 respostas

Seu código funcionou perfeitamente aqui, o que exatamente não funcionou como esperado ?

O meu também ficou assim. Cheguei até a copiar o código do professor e mesmo assim o programa só fala se você acertou ou errou no final, quando acabam as tentativas, de uma só vez.

Exatamente o mesmo problema aqui, inclusive procurei um comparador de textos, e os comandos estão iguais, o que muda um pouco no meu código é o que está dentro do mostra, no fim desisti de tentar entender e copiei o código do professor e tive o mesmo resultado de antes, mostrando o resultado apenas no final. será que é por conta do programa usado? Pois eu estou fazendo pelo Visual Studio.

Gente, depois de uma atualização o document.write()só apresenta a mensagem na página depois da página ter sido carregada completamente, ou seja apenas depois de sair do loop, dessa forma é recomendado que vcs usem o alert() para apresentar a mensagem ao invés do document.write()pelo menos nesse caso em específico.

Não é erro de lógica foi apenas uma atualização no método vejam: atraso na exibição de conteúdo