Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

duvida sobre o uso do parseInt

eu tentei utilizar o parseInt no código do IMC

<meta charset="utf-8">

<script>

    function pulaLinha (){

        document.write("<br>");

    }

    function mostra (frase){

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

    function calculaImc(altura, peso){

        return peso / (altura * altura);
    }

    var peso = parseInt (prompt("Insira seu peso"));
    var altura = parseInt (prompt("insira sua altura"));


    var imc = calculaImc(altura, peso);

    mostra ("o imc calculado é: " + imc);

</script>

Ao inserir no Peso e altura, 70 e 1.5, respectivamente. Ao rodar o programa o valor de IMC que eu estava recebendo era 70. Entrei no console do Chrome e descobri que a altura estava sendo passada de 1.5 para 1, logo o resultado da conta era 70.

Quando removi o parseInt do meu código, tudo funcionou corretamente.

A minha dúvida é: o parseInt além de transformar strings em números, ele também aproxima os números decimais? Se não, por que o 1.5 virou 1?

1 resposta
solução!

Fala, Pedro! Tudo bem contigo?

É isso mesmo!

Quando utilizamos o parseIntnão é que ele aproxima os números decimais, ele simplesmente corta o decimal deixando inteiro. Traduzindo, ele está "transformando a string em um número inteiro".

Existe um outro, "irmão do parseInt", chamado parseFloat. o floatvai transformar em números decimais!

Faça o teste!!!

Espero ter ajudado, Pedro!

Um abraço e bons estudos