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

retorna valor do peso

Gente, por algum motivo o meu IMC ta retornando o valor do peso depois que coloquei o IF..

e o mais estranho é q se eu tiro o ParseInt ele calcula o valor certo!

Alguem sabe me dizer por que?

Obrigada!!

<meta charset="UTF-8">

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

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

function calculaImc(peso, altura){

return peso/(altura*altura);

}


var nome = prompt("qual seu nome?");
var peso = parseInt(prompt("Certo, " + nome + " qual seu peso? Exemplo: 55"));
var altura = parseInt(prompt("E a sua altura? Exemplo: 1.62"));
var imc = calculaImc(peso, altura);

if(imc < 18.5){
    mostra("Seu imc foi: " + imc + " Abaixo do recomendado");

}

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

    mostra("Seu imc foi: " + imc + " Ta no recomendado.. ");

}

if(imc > 35){
mostra("Seu imc foi: " + imc + " Tá acima do recomendado");
}

</script>
5 respostas

Oi Maristela, tudo bem ?

Acho que a altura não é legal ser um int :( ai acho que está tendo problemas ali, faz esse teste.

Tudo ótimo e você?

Poderia explicar melhor o por que nao?

Eu entendi que o int sempre retorna um numero... e se fosse uma soma, por exemplo? como eu faria no caso da altura? Obrigada!!

solução!

o parseInt, vai transformar o texto em um valor inteiro, perceba que a altura é um valor quebrado, tem pontos né.

Isso faz com que possa quebrar a sua lógica.

Nesse caso, pode usar o método parseFloat() que transformar em numero quebrado, que em programação chamamos de float

Agora sim!! Funcionou! Muito obrigada!

Não há de que :D

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software