1
resposta

A condição if, não aparece no meu código.

Quando coloco meu programa para funcionar ele só faz a primeira parte do código.

E não opera a função IF.




<script type="text/javascript">

function    pulaLinha(){

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

}

function mostra(frase) {

    document.write(frase);
    pulaLinha

}

function calculaImc(peso, altura){

    document.write(peso/(altura*altura));
    return;
    pulaLinha()

}

var nome = prompt("Informe o seu nome");

alert ("Olá " + nome + " este programa serve para você conhecer o seu Índice de Massa corporal, vamos descobrir?");

var pesoInformado = prompt( nome + " Informe seu peso");

var alturaInformada = prompt( nome + " Informe sua altura");

mostra( nome + " seu indice de massa corporal cálculado é " );

var imc = calculaImc (pesoInformado,alturaInformada);


if ( imc <18.5 ){

    mostra("Você está abaixo do recomendado, precisa se cuidar.");

}

if ( imc>35 ){

    mostra("Você está acima do recomendado, precisa se cuidar.");
}


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

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

}


</script>
1 resposta

Olá Rayssa, tudo bem?

Então, o seu if está funcionando corretamente, a grande questão é a nossa função calcula imc, veja:


function calculaImc(peso, altura){

    document.write(peso/(altura*altura));
    return; <---
    pulaLinha()

}

Não estamos retornando nada, dessa forma o imc vale undefinede dessa forma todos os nossos testes com o if irá dar falso, parecendo que não está funcionando!

Na verdade, deveria ser da seguinte maneira:

function calculaImc(peso, altura){
    return peso / (altura * altura)
}

Dessa forma teremos um valor válido quando digitamos:

var imc = calculaImc(pesoInformado, alturaInformada);
mostra(imc)

Veja que dessa maneira também estamos utilizando a nossa função mostra, e a nossa variável imc terá o retorno da nossa função :)

Conseguiu Compreender?

Abraços e Bons Estudos!