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

Retorno de funções

Olá! Gostaria de saber por qual motivo meu programa está retornando apenas o peso do usuário quando tento calcular o imc através da função imcCalculation, sendo que o retorno das variáveis myWeight e myHeight retornam inteiros, pois utilizei o parseInt() para converter o valor inserido na função prompt. Obrigado desde já a quem se despuser em ajuda.

<meta charset="UTF-8">

<script>

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

    function show(phrase) {
        document.write(phrase);
        jumpLine();
    }

    function imcCalculation(weight, height) {
        var imc = weight / (height * height);
        return imc;    
    }

    var myName = prompt("What's your name? ");
    var myWeight = parseInt(prompt("What's your weight?"));
    var myHeight = parseInt(prompt("What's your height?"));
    var myImc = imcCalculation(myWeight, myHeight);
    show(myName + " your imc is " + myImc);

</script>
5 respostas

Copiei e colei o código e aparentemente funcionou peso = 50 altura = 170

printou daniel your imc is 0.0017301038062283738

Daniel Sahara, você esqueceu de colocar o ponto flutuante na altura. De qualquer forma, pelo menos no seu o resultado não retornou apenas o peso. Obrigado pela sua atenção!

solução!

A ta, agora entendi... O parseInt, serve apenas para numeros inteiros... Se voce der um parseInt num ponto flutuante, ele pego so o começo do numeros antes do ponto.

Se quiser usar ponto flutuante, use parseFloat ao invés de parseInt, ai acho que vai funcionar

Pô cara, realmente! Caramba! Fiquei até sem jeito agora de errar isso. Muito obrigado!

De nada !!

Eh normal cara, acontece nas melhores famílias hehehhe!!