1
resposta

[Dúvida] Duvida no uso do operador logico and(&&) para essa condição(linha 17)

<script>
var mostra = function(frase) {
    document. write(frase + '<br>');
};

/*Calculo de IMC(indice de massa corporal):
peso sobre altura elevado ao quadrado(p/h²)*/
var peso = prompt('Digite seu peso');
var altura = prompt('Digite sua altura');

var calculaIMC = function(altura, peso) {
    var imc = peso / (altura * altura);
    mostra('IMC calculado é ' + imc);
};
calculaIMC(altura, peso);

if ((imc > 18.5) && (imc < 35)) {
    document.write('Você está com Imc equilibrado');
} else {
    document.write('Você está com imc desequilibrado');
};
</script>

Como posso colocar o operador logico AND(&&) para que se as duas condições do meu codigo forem verdadeiras eles exibam a minha seguencia de caracteres?

1 resposta

Oi Gustavo, tudo bem? 😊

Entendi sua dúvida! No seu código, a variável imc é calculada dentro da função calculaIMC, mas ela não está disponível fora dessa função, no momento em que você faz a verificação if ((imc > 18.5) && (imc < 35)). 🤔

Para corrigir isso, você pode retornar o valor de imc da função calculaIMC e armazená-lo em uma variável para usá-lo na condição if. Veja como ficaria:

<script>
var mostra = function(frase) {
    document.write(frase + '<br>');
};

var peso = prompt('Digite seu peso');
var altura = prompt('Digite sua altura');

var calculaIMC = function(altura, peso) {
    var imc = peso / (altura * altura);
    mostra('IMC calculado é ' + imc);
    return imc; // Retorna o valor de imc
};

var imc = calculaIMC(altura, peso); // Armazena o valor retornado em uma variável

if ((imc > 18.5) && (imc < 35)) {
    document.write('Você está com Imc equilibrado');
} else {
    document.write('Você está com imc desequilibrado');
};
</script>

Dessa forma, o valor de imc estará disponível para a verificação na condição if, e o operador && funcionará corretamente, exibindo a mensagem "Você está com Imc equilibrado" apenas se as duas condições forem verdadeiras. 👍

🎓 Para saber mais:

Espero ter ajudado! 🧐