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

(sendo criativo) Em vez de alerta pedindo info um botao

eu estava tentando modificar o codigo para que em vez de iniciar com um prompt eu tivesse um botao que ao clicar ele pegaria informacao e iniciaria o jogo. esta parte eu consegui fazer como na licao, mas me veio a duvida que nao mostrava tudo direto somente no final, e me veio a ideia de mudar para um formulario que pede as tentativas, nesse aqui eu empaquei nao sei porque nao consegui pegar os valor do campo tentei o codigo em diversas formas em diversas funcoes nada deu certo entao decidir pedir ajuda aqui, sei que esta um pouco mais avancado do que a licao pede, mas e para conhecimento, mesmo meu problema estava em usar document.getElementById nao importa o que eu fizesse esse bendido nao captura o valor do campo do formulario.

vale lembra que aqui eu criei algumas respostas revelando o numero apenas pra poder acompanhar o desempenho do codigo! se alguem tiver uma luz agradeco.

    <script>

    function pulaLinha() {

            document.write("<br>");
            document.write("<br>");
        }

    function mostra(frase) {

        document.write(frase);
        pulaLinha();    

    }

    function token() {
    var tokenChute = parseInt(document.getElementById("chute2").value);
    chute = tokenchute;
    return chute;
        jogopalpite();
  }

    var entraChute = 10000000;
    var chute = entraChute;
    var numeroPensado = Math.round(Math.random() * 10);
    var tentativas = 1;
    function form() {

        document.write("<form action='jogopalpite()'>");
        document.write("<h1> Acerte o numero sorteado ? </h1>");
        document.write("<label for='fname'>Proximo chute:</label>");
        document.write("<input type='text' id='chute2' name='chute2'>");
        document.write("<input type='button' value='Jogar' onclick='token()'>");
        document.write("</form>");

        tentativas++;

       }


    function jogopalpite() {


        if (chute == numeroPensado) {


                mostra("Voce Acertou seu chute foi " + chute + " e o numero sorteado foi " + numeroPensado);
                mostra(tentativas);

                }   
                    else { 
                        mostra("Voce Errou, tente novamente");
                        mostra("Errou seu chute foi " + chute + " e o numero sorteado foi " + numeroPensado);
                        mostra("Tentativa n " + tentativas);
                        document.write("<hr>");

                        form();       

                }
    }


      form();


    pulaLinha();
     mostra("Click em jogar para jogar");
    </script>
2 respostas
solução!

Oi, Rafael, como vai?

Os problemas estão na sua função token(), são dois problemas. O primeiro é que você tenta atribuir o valor da variável tokenChute para a variável chute, só que na atribuição você escreveu a variável tokenChute de forma errada, com a letra C de Chute minúscula. O segundo problema é que você utilizou a instrução return antes de invocar a função jogopalpite(), então a função jogopalpite() nunca vai ser executada.

O código correto da função token() ficaria assim:

function token() {
        var tokenChute = parseInt(document.getElementById("chute2").value);
        chute = tokenChute;
        jogopalpite();
}

Espero ter ajudado.

Abraços e bons estudos!

Opa muito obrigado @Murillo, neste dia passei 9 horas estudando essa licao no final ja estava cansado. depois que voce me ajudou melhorei o codigo ainda mais, tirei as redundancias ficou muito melhor!! aqui esta o codigo rodando.


 <script>

    function pulaLinha() {

            document.write("<br>");
            document.write("<br>");
        }

    function mostra(frase) {

        document.write(frase);
        pulaLinha();    

    }

  function token() {
        var tokenChute = parseInt(document.getElementById("chute2").value);
        chute = tokenChute;
        form();
        jogopalpite();
        tentativas++;

}



    var entraChute = 10000000;
    var chute = entraChute;
    var numeroPensado = Math.round(Math.random() * 10);
    var tentativas = 1;
    function form() {
        if(tentativas > 1){

        } else {

        document.write("<form action='jogopalpite()'>");
        document.write("<h1> Acerte o numero sorteado ? </h1>");
        document.write("<label for='fname'>Proximo chute:</label>");
        document.write("<input type='text' id='chute2' name='chute2'>");
        document.write("<input type='button' value='Jogar' onclick='token()'>");
        document.write("</form>");


    }
       }


    function jogopalpite() {


        if (chute == numeroPensado) {


                mostra("Voce Acertou seu chute foi " + chute + " e o numero sorteado foi " + numeroPensado);
                mostra(tentativas);

                }   
                    else { 
                        mostra("Voce Errou, tente novamente");
                        mostra("Errou seu chute foi " + chute);
                        mostra("Tentativa n " + tentativas);
                        document.write("<hr>");



                }
    }

for(i = 0; i < 1; i++ ){
    form();
}



    pulaLinha();
     mostra("Click em jogar para jogar");
    </script>