Cálculadora de Índice Masa Corporal usando JavaScript

Introducción

Hola, en este tutorial enseñaremos sobre como crear una calculadora usando JavaScript para obtener el IMC.

El Índice de Masa Corporal es una medida de asociación entre el peso y la talla de una persona. El IMC es usado como uno de varios indicadores para evaluar el estado nutricional.

La fórmula del IMC es el peso en kilógramos dividido por el cuadrado de la altura en metros (kg/m2). El IMC es una indicación simple de la relación entre el peso y la talla que se utiliza frecuentemente para identificar el sobrepeso y la obesidad en los adultos, tanto a nivel individual como poblacional.

La Organización Mundial de la Salud, ha propuesto una clasificación del estado nutricional dependiendo del IMC de una persona.

Veámos el Código JS

function calc_imc()
{
  var altura=document.getElementById("altura").value;
  altura=altura.toString().replace(',','.');
  var alturaMetro=altura/100;
  var peso=document.getElementById("peso").value;
  
  if(altura==""){
      document.getElementById("errorIMC").innerHTML="Por favor, introduce tu altura.";
  }
  else if(altura<0){
      document.getElementById("errorIMC").innerHTML="La altura que introduzca debe ser positiva.";
  }
  else if(altura<20){
      document.getElementById("errorIMC").innerHTML="Ha introducido la altura en metros. 
      Por favor, multipliquela por 100 para introducirla en centimetros.";
  }
  else{
      document.getElementById("errorIMC").innerHTML="";
      if(peso==""){
        document.getElementById("errorIMC").innerHTML="Por favor, introduce tu peso.";
      }
      else if(peso<0){
          document.getElementById("errorIMC").innerHTML="El peso que introduzca debe ser positivo.";
      }
      else{
        document.getElementById("errorIMC").innerHTML="";
        
        /*CALCULO IMC*/
        var alturaCuadrado=alturaMetro*alturaMetro;
        var imc=peso/alturaCuadrado;
        document.getElementById("IMC").value=Math.round(imc*100)/100;     
        /*CALCULO DESCRIPCION IMC*/
        if(imc<16){
          document.getElementById("IMCdetallado").value="Delgadez Severa";    
        }
        else if(imc<17){
          document.getElementById("IMCdetallado").value="Delgadez Moderada";    
        }
        else if(imc<18.5){
          document.getElementById("IMCdetallado").value="Delgadez Aceptable";   
        }
        else if(imc<25){
          document.getElementById("IMCdetallado").value="Peso Normal";    
        }
        else if(imc<30){
          document.getElementById("IMCdetallado").value="Sobrepeso";    
        }
        else if(imc<35){
          document.getElementById("IMCdetallado").value="Obeso: Tipo I";    
        }
        else if(imc<40){
          document.getElementById("IMCdetallado").value="Obeso: Tipo II";   
        }
        else if(imc>=40){
          document.getElementById("IMCdetallado").value="Obeso: Tipo III";    
        }
      }
  }
}

Demostración




Resultado

Clasificación Organización Mundial de la Salud

IMC Clasificación
<16.00 Infrapeso: Delgadez Severa
16.00 - 16.99 Infrapeso: Delgadez moderada
17.00 - 18.49 Infrapeso: Delgadez aceptable
18.50 - 24.99 Peso Normal
25.00 - 29.99 Sobrepeso
30.00 - 34.99 Obeso: Tipo I
35.00 - 40.00 Obeso: Tipo II
>40.00 Obeso: Tipo III
Anuncios / Ads
Anuncios / Ads

Sobre programación web

• Validación de formularios usando características de HTML5
• Método para insertar registros en MySQL usando PHP
• Obtener datos desde MySQL y mostrar el resultado en una tabla
• Los colores y sus códigos RGB
• Cómo evitar los comentarios spam
• Creando un login simple con jquery, php y mysql
• Conversor de Medidas Online
• Visualizar datos en una tabla parte II: Aplicando estilo css
• Un ejemplo de ABM usando Ajax - PHP - MySQL
• Usando jquery para modificar elementos del HTML
• Usar PDO para conectarse a MYSQL
• Cómo detectar el navegador usando JavaScript
• Cómo desarmar un notebook HP Compaq Presario C700

Fotografía

• Michelles Jaque
• Beatriz Cabrera Zapata

Poesías

• Mini Poesías - Constanza Gonzales
• Sobre las decisiones - Constanza Gonzales

Últimas Publicaciones

• Enviar correos usando un formulario desde sitio web o localhost con PHPMailer
• Cómo crear un cuadro de búsqueda al estilo Google
• Sistema de LogIn con verificación de email y recuperación de contraseña usando PHP
• Proyecto Intranet: Ordenes de servicio y ventas
• Demostración Jquery UI Selectable usando php y bases de datos mysql
• Subir, insertar, actualizar, borrar imágenes con PHP y MySQL
• Calculadora IMC usando JavaScript

Anuncios / Ads

Newsletter



Gracias. Te mantendremos informado

Website Template por IdeasChile © 2009 - 2017 Optimizado para Chrome - Firefox - Opera