Olá,
Estava praticando com o conhecimento que adquiri na aula de Lógica de Programação do professor Flávio e me deparei com a seguinte situação: Eu tentava imprimir no navegador o resultado do cálculo de IMC que programei, mas, ao invés de fazer isso ele simplesmente imprimia o valor do peso que eu informei no prompt. Não consegui achar aonde está o erro, alguém consegue me ajudar? Segue o meu código:
OBS: Um detalhe que eu percebi: No meu código eu coloquei parseInt quando chamei o comando prompt, mas o professor Flávio não fez isso na vídeo aula... Agora achei estranho, quando não colocamos o parseInt, o comando prompt nos devolve uma String, não é? Sei que para operações matemáticas de multiplicação e divisão o Javascript converte os números dentro de aspas para números de verdade, então a função calculaImc ainda consegue dar algum resultado. Mas, usar o parseInt nesse caso está tão errado assim?
<meta charset='UTF-8'>
<script>
function pulaLinha(){
document.write("<br>");
}
function escreva(frase){
document.write(frase);
pulaLinha();
}
function calculaImc (altura, peso){
return peso / (altura * altura);
}
var alturaInformada = parseInt(prompt("Informe a sua altura"));
var pesoInformado = parseInt(prompt("Informe o seu peso"));
var imc = calculaImc (alturaInformada, pesoInformado);
escreva("Seu imc é: " + imc);
if(imc > 35) {
escreva("Você está acima do peso :(");
}
if(imc <18) {
escreva("você está abaixo do peso :(");
}
if(imc >= 18 && imc <= 35){
escreva("Seu imc está ótimo :)");
}
</script>