PROBLEMA EM CLCULO COM JAVASCRIPT

 Tópico anterior Próximo tópico Novo tópico

PROBLEMA EM CLCULO COM JAVASCRIPT

ASP.NET

 Compartilhe  Compartilhe  Compartilhe
#492212 - 13/01/2020 21:18:43

KELLY
BRASILIA
Cadast. em:Setembro/2009


Ol a todos!

Estou fazendo um pequeno projeto usando Javascript, porm ele est apresentando problema na comparao dos resultados.
O valor obtido em IMC est sendo fracionado e dentro da estrutura condicional estou informando um nmero inteiro.
Tentei utilizar parseInt(), mas o cdigo no rodou. Como comparar estes valores de formatos diferentes para que a estrutura condicional funcione corretamente?

Segue o cdigo abaixo:

  
function calcularIMC() {
    var formulario = document.getElementById([]formulario[]);

    var kilos = parseInt(formulario.kilos.value);
    var metros = parseInt(formulario.metros.value);
    var centimetros = parseInt(formulario.centimetros.value);

    var altura = (metros * 100 + centimetros) / 100;

    var imc = kilos / (altura * altura);
    
    formulario.imc.value = imc.toFixed(2);
    
    if(imc <= 20)
        alert([]Abaixo do Peso[])
        /* else if(parseInt(imc) => 20 && parseInt(imc) <= 25) */
    else if(imc => 20 && imc <= 25)
        alert([]Peso Ideal[]);
    else if(imc >= 25 && imc <= 30)
        alert([]Sobrepeso[]);
    else if(imc >= 30 && imc <= 35)
        alert([]Obesidade Moderada[]);
    else if(imc >= 35 && imc <= 40)
        alert([]Obesidade Severa[]);
    else if(imc >= 40 && imc <= 50)
        alert([]Obesidade Mrbida[]);
    else
        alert([]Super Obesidade[]);
}






#492214 - 13/01/2020 21:44:54

FABRICIOWEB
BELO HORIZONTE
Cadast. em:Novembro/2011


Última edição em 13/01/2020 21:45:30 por FABRICIOWEB

quais os valores esta recebendo cada um?
posta um exemplo
   var kilos = parseInt(formulario.kilos.value);
    var metros = parseInt(formulario.metros.value);
    var centimetros = parseInt(formulario.centimetros.value);



#492215 - 13/01/2020 21:51:04

FABRICIOWEB
BELO HORIZONTE
Cadast. em:Novembro/2011


um exemplo de calculo imc

<!DOCTYPE html>
<html>
<body>

<script type=[]text/javascript[]>
function calcula_imc(){
var altura = document.imcForm.altura.value;
var peso = document.imcForm.peso.value;

var quadrado = (altura * altura);

var calculo = (peso/quadrado);

if(calculo<18.5){
alert([]Voc est magro com esse indice: [] + calculo);
}
else if(calculo>=18.5 && calculo<24.9){
alert([]Voc est normal com esse indice: [] + calculo);
}

else if(calculo>=25 && calculo<29.9) {
alert([]Voc est com sobre peso com esse indice: [] + calculo);
}
else if(calculo>=30 && calculo<39.9) {
alert([]Voc est com obesidade com esse indice: [] + calculo);
}
else if (calculo>40)
alert([]Voc estcom obesidade grave com esse indice: [] + calculo);
}

</script>

<title>Documento sem ttulo</title>
</head>

<body>

<form name=[]imcForm[] id=[]imcForm[] action=[]#[]>

<p>
Altura<br />
<input type=[]text[] id=[]altura[] name=[]altura[] />
</p>

<p>Peso <br />
<input type=[]text[] id=[]peso[] name=[]peso[] />
</p>

<p>
<label>
<input type=[]radio[] name=[]sexo[] value=[]opo[] id=[]sexo_0[] />
Masculino</label>
<br />
<label>
<input type=[]radio[] name=[]sexo[] value=[]opo[] id=[]sexo_1[] />
Feminino</label>
</p>
<p><input name=[]Enviar[] type=[]submit[] value=[]Calcular[] onclick=[]calcula_imc()[] />
</p>
</form>

</body>
</html>



Resposta escolhida #492216 - 13/01/2020 22:17:10

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Do mesmo jeito que transformou(parse) dos valores do formulario, faa com os condicionais:

if(parseInt(imc) <= 20)
        alert([]Abaixo do Peso[])
        /* else if(parseInt(imc) => 20 && parseInt(imc) <= 25) */
    else if(parseInt(imc) => 20 && imc <= 25)


_______________________________________________________________________
Virei Orculo!
The end is nigh, be ready for the nukes!


#492218 - 14/01/2020 16:14:58

KELLY
BRASILIA
Cadast. em:Setembro/2009


Fabrcio, o valor fracionado comea na linha var imc = kilos / (altura * altura);. Ele est correto, o problema na estrutura condicional que no passa nos testes.
Kerplunk, deu certo o seu exemplo.

Obrigada a todos por ajudarem!





 Tópico anterior Próximo tópico Novo tópico


Tópico encerrado, respostas não sao permitidas
Encerrado por KELLY em 14/01/2020 16:15:17