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

Return não funciona

Meu código não funciona.

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

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

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

    function calculaImc(peso, altura){
        var imc = Math.round(peso / (altura * altura));
        return imc;
    }

    var imcFelipe = calculaImc(80, 1.75);
    var imcPessoa = calculaImc(68, 1.81);

</script>

O problema está no return, pois troco pelo mostra(imc), ele funciona mesmo.

2 respostas
solução!

Oi Felipe, tudo bem?

Rodei o seu código aqui e ele funcionou normalmente, o return está funcionando de maneira correta!

O que acontece é que você retorna o IMC para as variáveis imcFelipe e imcPessoa, pois são nessas variáveis que você está chamando a função. Mas veja que você não está mostrando essas variáveis em nenhum lugar, ou seja, o valor está sendo retornado, só não está sendo mostrado na tela pois você não chama a função mostra, então o ideal seria você chamá-las, dessa maneira:

var imcFelipe = calculaImc(80, 1.75);
var imcPessoa = calculaImc(68, 1.81);

mostra(imcFelipe);
mostra(imcPessoa);

Espero ter ajudado, bons estudos =)

Obrigado, Giovanna. Esquecei do mostra(), vacilo.