2
respostas

[Projeto] Resultado correto exibindo duas frases....

Oi, gostaria de uma ajuda para identificar o motivo que um resultado acertado está mostrando duas mensagens?

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

    function pulaLinha() {

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

    function mostra(frase) {

        document.write(frase);
        pulaLinha();
    }

    function sorteia(n) {

        return Math.round(Math.random() * n);
    }    

       var numeroPensado = sorteia(10);

    var chute = parseInt(prompt("Já pensei. Qual você acha que é?"));

    if(chute == numeroPensado) {

        mostra("Uau! Você acertou  " + numeroPensado);
    } 

    
     if(chute > numeroPensado) {

            mostra("Você errou! Seu chute é maior que o número pensado!");

        } else {

            mostra("Você errou! Seu chute é menor que o número pensado!");
        
        }
      
</script>

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

2 respostas

Oi, Cristian

Insira um else em:

else if(chute > numeroPensado) {

Boa tarde, Cristian.

Isso ocorre porque após verificar se o chute é igual ao número pensado, o código continua a executar e verifica se o chute é maior ou menor que o número pensado, resultando na exibição das duas mensagens de erro.

Para corrigir isso, você pode usar a estrutura condicional else if após o primeiro if, assim apenas uma das condições será verificada. Aqui está o código corrigido:Insira aqui a descrição dessa imagem para ajudar na acessibilidade

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