3
respostas

Mostra não funciona depois de

Depois de executar as comparações, o meu código não executa a função "mostra".

<meta charser = "utf=8">

<script>

function pulaLinha() {

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

function mostra(frase) {

    document.write(frase);
    pulaLinha();
    }

function calculaImc (peso, altura) {

    return peso / (altura * altura);
}

var nome = prompt("Qual é o seu nome?")
var alturaInformada = prompt(nome + " , informe sua altura");
var pesoInformado = prompt(nome + " , informe seu peso");

var imc = calculaImc(pesoInformado, alturaInformada);

mostra(nome + " o seu IMC atual é " + Math.round(imc));

if(imc < 18.5) {
    mostra("Ele está abaixo do IMC ideal e é classificado como magreza, procure um especialista.");
};
if(imc >= 18.51 && <= 24.9) {

    mostra("Ele está classificado como normal, continue se cuidando.");
};
if(imc >= 25 && <= 29.9) {

    mostra("Ele está acima do ideal e é classificado como sobrepeso procure um médico.");
};
if(imc >= 30 && <= 40){

    mostra("Ele está muito acima do ideal, é classificado como obesidade. Procure um médico!");
};
if(imc > 40) {
    mostra("Ele está muitíssimo acima do ideal, é classificado como obsidade gravíssima. Procure um médico.");
};

mosta("Para mais informações visite o ");

</script>

<a href="https://www.programasaudefacil.com.br/calculadora-de-imc">"site"</a>
3 respostas

Já achei o erro, na verdade eram dois erros. O "mostra estava escrito errado, e a função && estava faltando argumento.

<meta charser = "utf=8">

<script>

function pulaLinha() {

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

function mostra(frase) {

    document.write(frase);
    pulaLinha();
    }

function calculaImc (peso, altura) {

    return peso / (altura * altura);
}

var nome = prompt("Qual é o seu nome?")
var alturaInformada = prompt(nome + " , informe sua altura");
var pesoInformado = prompt(nome + " , informe seu peso");

var imc = calculaImc(pesoInformado, alturaInformada);

mostra(nome + " o seu IMC atual é " + Math.round(imc));

if(imc < 18.5) {
    mostra("Ele está abaixo do IMC ideal e é classificado como magreza, procure um especialista.");
};
if(imc >= 18.51 && imc <= 24.9) {

    mostra("Ele está classificado como normal, continue se cuidando.");
};
if(imc >= 25 && imc <= 29.9) {

    mostra("Ele está acima do ideal e é classificado como sobrepeso procure um médico.");
};
if(imc >= 30 && imc <= 40){

    mostra("Ele está muito acima do ideal, é classificado como obesidade. Procure um médico!");
};
if(imc > 40) {
    mostra("Ele está muitíssimo acima do ideal, é classificado como obsidade gravíssima. Procure um médico.");
};

mostra("Para mais informações visite o site abaixo");

</script>

<a href="https://www.programasaudefacil.com.br/calculadora-de-imc">Clique aqui</a>

Perfeito, Gabriel!!!

Faltou somente esse detalhe!

Qualquer dúvida nos procure

Um abraço e bons estudos

Concordo com Gabriel,

O erro era só incluir a var imc na linha que faltava, segue exemplo:

linha sem var imc ==> if(imc >= 18.51 && <= 24.9) { ==> não funciona

linha com var imc ==> if(imc >= 18.51 && imc <= 24.9) { ==> está funcionando

E fazendo nas respectivas linhas e irá funcionar.

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