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

Como posso deixar o código mais "enxuto"?

Olá, estou me estendendo bastante em encerrar esse bloco ("repita tarefas") de aula porque acredito que seja bem essencial entender essa parte. Fiz modificações no código e queria saber como poderia deixá-lo mais enxuto. Agradeço dicas. :)

<meta charset = "UTF-8">
<h1> Jogo da Adivinhação </h1>

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

    var numeroPensado = Math.round(Math.random() * 10);
    var chute = parseInt(prompt("Digite o n° do seu chute!"));
    var tentativa = 1;

    while(chute != numeroPensado && tentativa < 3) {
        if(chute < numeroPensado) {
            chute = parseInt(prompt("Você chutou baixo, tente novamente!"));
            tentativa++;
        } else {
            chute = parseInt(prompt("Você chutou alto, tente novamente!"));
            tentativa++;
        }
    }
    if(chute == numeroPensado && tentativa < 3) {
        mostra("Você acertou em cheio! O número era " + numeroPensado);
        }
    if(tentativa >= 3) {
        mostra("Que pena, suas chances acabaram. O número era " + numeroPensado);
    }
mostra("<b>F I M</b>");
</script>
2 respostas
solução!

Parabéns pelo código, Clara!

Está mandando muito bem! O código está perfeito :D

O que eu faria, com o intuito de "enxutar" o código seria mover o tentativa++ para fora do if /else e, assim, reduziria uma linha de código:

while (chute != numeroPensado && tentativa < 3) {
        if (chute < numeroPensado) {
            chute = parseInt(prompt("Você chutou baixo, tente novamente!"));
        } else {
            chute = parseInt(prompt("Você chutou alto, tente novamente!"));
        }
        tentativa++;
    }

Outra coisa seria usar o else no lugar do último if:

if (chute == numeroPensado && tentativa < 3) {
        mostra("Você acertou em cheio! O número era " + numeroPensado);
    }
    else {
        mostra("Que pena, suas chances acabaram. O número era " + numeroPensado);
    }

Mais uma vez, apenas o que eu faria.

Nada com o que se preocupar, pois o código funciona muito bem!

Bons estudos!

Obrigada, Rosicley! :D Escutei certa vez que um código precisa ser eficiente e enxuto, ai fico sempre atrás disso. Sei que consigo diminuir as { } colocando tudo numa mesma linha, mas como ainda estou aprendendo, achei que poderia ficar complicado de ler depois.

Valeu mesmo pelas dicas e pelo elogio, ganhei meu domingo de estudo! :D