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

Geracoes

olá pessoal!

preciso de um auxilio...

realizei o exercicio final do modulo 4 mas a equacao do meu codigo final sai com um valor de 1967.4285714285713, gostaria de saber o motivo

<meta charset="UTF-8">

<script>

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

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

    var vindadosPortugueses = 1500;
    var anoAtual = 2021;
    var media = 28;

    mostra("A média de gerações é" + (anoAtual - vindadosPortugueses / media) + "anos");
    pulaLinha();


</script>

tinha usado o math.round antes da equacao, mas, o resultado sai 1967 que tbm é divirgente com a do professor 18.428571428571427

2 respostas
solução!

O erro está acontecendo, pois o correto seria primeiro ele fazer a subtração do anoAtual com a vindadosPortugueses, para depois dividir pela media. Mas o programa está primeiro dividindo a vindaDosPortugueses pela média, e depois pegando o anoAtual e subtraindo esse valor, que da os 1967. Isso ocorre porque o programa respeita a ordem de prioridade que existe nestas equações, onde primeiro se faz a multiplicação ou divisão, e depois a soma ou subtração. Para corrigir, é só fazer igual na vida real, colocar um parenteses na conta que você quer que seja executada primeiro, neste caso a subtração, então o código fica assim:

mostra("A média de gerações é" + ((anoAtual - vindadosPortugueses) / media) + "anos");

Espero ter ajudado. Valeu.

Boa noite Matheus!

Ficou clara a sua explicacao. Obrigado mais uma vez.

abracos!!