1
resposta

upgrade...

Se usássemos um numero aleatório entre 1 e 100, poderíamos acertar menos tentativas. Implementando no código igual a notação do grande "O". Assim, quando o usuário entrar com o numero, o jogo pode informar a posição quanto ao numero aleatório (maior ou menor). O usuário deve apenas atualizar com os proximos numeros - metade da parte ( se primeira tentativa for 50, e o retorno de numPensa for menor que numAleat, entao o usuario pode informar 25... e assim por diante)

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

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

    function mostra( frase ) {
        document.write( frase );
        pulaLinha();
    }

    function calculaImc( a, p ) {
        var resultado = p / (a * a);
        return resultado;
    }

    function pegaNumeroAleatorio(menor, maior) {
        return Math.random() * (maior - menor) + menor;
    }

    var numeroPensado = parseInt(pegaNumeroAleatorio(1, 100));
    var numeroUsuario = 0;
    var numTentativas = 1;
    var jogoStatus = new Boolean(true);

    console.log( numeroPensado );
    console.log( numeroUsuario );
    console.log( numTentativas );
    console.log( jogoStatus );

    while ( jogoStatus ) {
        numeroUsuario = parseInt(prompt("Entre com um Numero de 1 a 100:"));
        if ( numeroUsuario > numeroPensado ) {
            console.log( "Desculpa... Voce errou. Seu Numero é Maior. Tente novamente! tentativas:(" + numTentativas + ")" );
        } else if ( numeroUsuario < numeroPensado ) {
            console.log( "Desculpa... Voce errou. Seu Numero é Menor. Tente novamente! tentativas:(" + numTentativas + ")" );
        } else if ( numeroPensado == numeroUsuario ) {
            console.log( "Parabens! Voce acertou! " + numTentativas );
            jogoStatus = false;
            break;
        }
        numTentativas++;
    }

</script>
1 resposta

Bom dia, Mauricio! Como vai?

Mto bem! É isso aí! Eu só achei um pouco rebuscado demais como na parte onde vc fez var jogoStatus = new Boolean(true). Não havia necessidade de fazer assim. Como bem disse um dos expoentes da computação, Edsger Dijkstra, prezar pela simplicidade é sempre melhor! Além disso, o seu jogo tem tentativas infinitas. Eu não sei se esse era o seu objetivo, mas foi algo que me saltou aos olhos como sendo estranho. Mas fora esses dois pontos, o seu código ficou bem bacana!

Qualquer coisa é só falar!

Grande abraço e bons estudos, meu aluno!

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