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

Olá, quando insiro a altura 1.80 e peso 80, da dois resultados.

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


//
//function mostra (frase) 
//{
//    document.write(frase)
//}
//
//function pulaLinha ()
//{
//    document.write("<br>");
//
//}
//
//var pesoMarcos = 80;
//
//var alturaMarcos = 1.82;
//
//var imcMarcos = pesoMarcos / (alturaMarcos * alturaMarcos);
//
//mostra("O IMC do Marcos é ")
//
//mostra(imcMarcos)
//
//

// prompt (informe sua altura)


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

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




var altura =prompt("informe sua altura");

var peso =  prompt("informe seu peso");

var Imc = peso / (altura * altura);


mostra("Seu peso é ");
mostra(peso);
pulaLinha()
mostra("Sua altura é ");
mostra(altura);
pulaLinha()

document.write("Seu IMC é: "); 

mostra (Imc);
pulaLinha();
mostra("Seu peso é considerado");
if (Imc<=18.5){
    mostra(" Magreza ")
}
if(18.5<Imc<=24.9){
    mostra(" Normal ");


}
if(24.9<Imc<=30.0){
    mostra(" Sobrepeso ");

}
if(Imc>30.0){
    mostra(" Obesidade ");
}

</script>
2 respostas

Olá Marcos!

Seu programa está reconhecendo que o IMC de alguém com altura de 1.80 e peso de 80 é igual a 24.69 certo?

Conforme o código, esse Imc se encaixa nas duas condições, "Normal" e "Sobrepeso".

Para arrumar seria necessário implementar o operador lógico "e" representado por &&.

O operador lógico funcionará "perguntando" ao código se o Imc está entre as duas condições implementadas, por exemplo:

Se o Imc é menor que 18.5 e maior igual a 24.9:

if(Imc > 18.5 && Imc <= 24.9){
    mostra("Normal");
} 

O mesmo vale para a condição sobrepeso:

if(Imc > 24.9 && Imc <= 30.0){
    mostra("Sobrepeso");
}

Espero ter ajudado!

solução!

Outra solução é se valer da exclusão sequencial, com if e else if.

if (imc <= 18.5){
    mostra(" Magreza ")
}
else if (imc < 24.9){
    mostra(" Normal ");
}
else if (imc < 30.0){
    mostra(" Sobrepeso ");
}
else if (imc > 30.0){
    mostra(" Obesidade ");
}