2
respostas

Cálculo IMC

Não consigo achar o erro no meu código, toda vez ele retona NaN.

<meta charset="UTF-8">

<script>

    function pulaLinha() {

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

    function mostra(frase) {

        document.write(frase);
        pulaLinha();
}

    function calculaImc(altura, peso) {

        return (altura * altura) / peso;
}

var nome = prompt("Informe o seu nome");
var alturaInformada = prompt(nome + ", informe sua altura");
var pesoInformado = prompt(nome + ", informe seu peso");

var imc = calculaImc(alturaInformada, pesoInformado);

document.write(nome + ", o seu IMC é " + imc);

mostra(nome + ", o seu IMC é " + imc);



</script>
2 respostas

Seguindo a mesma logica do Prof. me retorna como NaN.

![](Insira aqui a descrição dessa imagem para ajudar na acessibilidade )

<meta charset="UTF-8">

<script>

    function pulaLinha() {

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

    function mostra(frase) {

        document.write(frase);
        pulaLinha();
}

    function calculaImc(altura, peso) {

        return (altura * altura) / peso;
}

var nome = prompt("Informe o seu nome");
var alturaInformada = prompt(nome + ", informe sua altura");
var pesoInformado = prompt(nome + ", informe seu peso");

var imc = calculaImc(alturaInformada, pesoInformado);

document.write(nome + ", o seu IMC é " + imc);

mostra(nome + ", o seu IMC é " + imc);

if(imc < 18.5) {

mostra("Você está abaixo do recomendado");

}

if(imc > 35) {

mostra("Você está acima do recomendado");
}

if(imc >= 18.5 && imc<=35) {

    mostra("Seu IMC está excelente!");

}


</script>

Olá Carla Cristina

Pelo que eu vi aqui, seu código está funcionando certinho, mais sei oque pode ser.

Bom no momento de inserir a altura você pode estar passando o valor com virgula, ai vai como numero fracionado e da o NaN, tenta com ponto.