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

Valor IMC errado

Porque está errado? >< o IMC mostrado fica igual ao peso

<meta charset="UTF-8">
<script>


    function pulaLinha(){
        document.write("<br>");
    }
    function mostra(msg){
        document.write(msg);
        pulaLinha()
    }
    function calculaImc(peso, altura){
        return (peso/(altura*altura))
    }


    var nome = prompt("Qual é seu nome?");
    var p = parseInt(prompt(nome + ", digite seu peso:"));
    var a = parseInt(prompt(nome + ", digite sua altura:"));
    var imc = parseInt(calculaImc(p, aa));

    if(imc<18){
        mostra(nome + ", seu IMC é " + imc + " e está abaixo do normal.");}
    if(imc>=18 && imc<=25){
        mostra(nome + ", seu IMC é " + imc + " e está normal.");}
    if(imc>25){
        mostra(nome + ", seu IMC é " + imc + " e está acima do normal.");}

</script>
2 respostas
solução!

Boa tarde, estou na mesma aula, chegando nessa parte de IMC, vi sua dúvida e aceitei o desafio, dei uma pesquisada e uma pensada. A solução:

<meta charset="UTF-8">
<script>


    function pulaLinha(){
        document.write("<br>");
    }
    function mostra(msg){
        document.write(msg);
        pulaLinha()
    }
    function calculaImc(peso, altura){
        return (peso/(altura*altura));
    }


    var nome = prompt("Qual é seu nome?");
    var p = parseInt(prompt(nome + ", digite seu peso:"));
    var a = prompt(nome + ", digite sua altura:"); // parseInt() não funciona com casas decimais. 
    var imc = calculaImc(p, a); // tinha um erro de escrita

    if(imc<18){
        mostra(nome + ", seu IMC é " + imc + " e está abaixo do normal.");}
    if(imc>=18 && imc<=25){
        mostra(nome + ", seu IMC é " + imc + " e está normal.");}
    if(imc>25){
        mostra(nome + ", seu IMC é " + imc + " e está acima do normal.");}

</script>

Obviamente eu só trouxe o resultado, mas já já um professor vem explicar direitinho, bons estudos ;)

Obrigada!

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