Calculo de imc aparece nan

Galera fiz esse codigo, e toda hora que coloco o peso e a altura no prompt ele aparece NaN(Not a Number) no resultado .
Alguem poderia me dizer o que estou fazendo de errado?

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
<script>
function pulaLinha(){
	document.write("<br><br>");
}
function mostra(frase){
	document.write(frase);
}
function calculaImc(altura, peso){
	var imc = peso / (altura * altura);
	return imc;
}
var imcDoUsuario = calculaImc(alturaDoUsuario, pesoDoUsuario);
var pesoDoUsuario = parseInt(prompt("Qual é seu peso?"));
var alturaDoUsuario = parseInt(prompt("Qual é a sua altura?"));

mostra("O seu IMC é de: " + imcDoUsuario);


</script>
</body>
</html>

A ordem dos fatores podem alterar o produto…

var imcDoUsuario = calculaImc(alturaDoUsuario, pesoDoUsuario);
var pesoDoUsuario = parseInt(prompt("Qual é seu peso?"));
var alturaDoUsuario = parseInt(prompt("Qual é a sua altura?"));

var pesoDoUsuario = parseInt(prompt("Qual é seu peso?"));
var alturaDoUsuario = parseInt(prompt("Qual é a sua altura?"));
var imcDoUsuario = calculaImc(alturaDoUsuario, pesoDoUsuario);

Você estava querendo calcular imc antes mesmo de pegar os valores :scream:

Obrigado amigo, ainda estou iniciando no javascript.

1 curtida

Mas isso é lógica, qualquer linguagem faria o mesmo (reclamaria :joy:)… bons estudos!