Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Função Mostra

<meta charset="UTF-8">
<script>
    function pulaLinha(){
        document.write("<br>")
        document.write("<br>")
    }
    function mostra (frase){
        document.write(frase);
        pulaLinha();
    }
    function calculaImc(peso,altura){
        var imc = peso/(altura*altura);

    }
    calculaImc(83, 1.85);
    calculaImc(68, 1.72);
    mostra("O IMC calculado é " + Math.round(imc)+".");
    mostra("O IMC calculado é " + Math.round(imc)+".");



</script>

Eu chamei a função mostra no fim do meu código para escrever o resultado do cálculo realizado na função calculaImc mas, mesmo eu colocando ele duas vezes, o resultado mostrado só se refere ao primeiro imc (83, 1.85) e aparece só uma vez. Por quê a função mostra não mostra o resultado dos dois nesse caso, somente quando eu a chamo dentro da função calculaImc?

2 respostas

Oi Gilmar tudo bem?

Você tem que colocar a função mostrar dentro da função calculaImc.

<meta charset="UTF-8">
<script>
    function pulaLinha(){
        document.write("<br>")
        document.write("<br>")
    }
    function mostra (frase){
        document.write(frase);
        pulaLinha();
    }
    function calculaImc(peso,altura){
        var imc = peso/(altura*altura);
        mostra("O IMC calculado é " + Math.round(imc)+".");

    }
    calculaImc(83, 1.85);
    calculaImc(68, 1.72);




</script>

Quando você declarou a variável imc dentro da função ela só existe dentro daquela função, por isso não mostrou nada na página.

Espero ter ajudado!!!

Boa noite, Gilmar! Como vai?

Esse problema está ocorrendo pois faltou vc utilizar um return dentro da função calculaImc() retornando o valor calculado, como visto nessa aula!

Dê uma olhada lá, faça as correções necessárias e veja se as coisas funcionam como vc esperava!

Qualquer coisa é só falar!

Grande abraço e bons estudos, meu aluno!