Artículos
Java

Calcular el índice de masa corporal con Java

18/Dic/2012

En este ejemplo vamos a calcular el índice de masa corporal con Java mediante la fórmula:

 imc= p/(t*t)

Donde:

  1. p= peso
  2. t= talla o estatura
  3. imc = el índice de masa corporal

Vamos a definir una clase Java llamada CalculoIMC.java y su método main e importamos la librería

javax.swing

,abajo de esta clase definimos otra más y la llamaremos Persona con cuatro atributos: nombre, edad, peso y estatura.

import javax.swing.JOptionPane;

class CalculoIMC{
  public static void main(String[] args) {
    //... falta más código por escribir
  }
}

//aqui esta la clase Persona
class Persona{
//atributos de la clase
  public String nombre;
  public int edad;
  public double peso,talla;
  //...
}

Ahora vamos a definir un método Java para asignar los atributos:

Persona asignar(String n,int e,double p,double t){
  nombre=n;
  edad=e;
  peso=p;
  talla=t;
  return this;
}

El operador this nos sirve para hacer referencia a los propios atributos de la clase Java. No es necesario declarar un tipo de dato.

Una vez hecho ya podemos escribir el método que calcula el índice de masa corporal con Java

public double imc(){
  return peso/(talla*talla);
}

Cuando se obtiene el resultado se puede hacer una comparativa de acuerdo a una clasificación:

String cad="";
if(imc()<16.00){
  cad="Infrapeso: Delgadez Severa";
}else if(imc()<=16.00 || imc()<=16.99){
  cad="Infrapeso: Delgadez moderada";
}else if(imc()<=17.00 ||imc()<=18.49){
  cad="Infrapeso: Delgadez aceptable";
}else if(imc()<=18.50 || imc()<=24.99){
  cad="Peso Normal";
}else if(imc()<=25.00 || imc()<=29.99){
  cad="Sobrepeso";
}else if(imc()<=30.00 || imc()<=34.99){
  cad="Obeso: Tipo I";
}else if(imc()<=35.00 || imc()=40.00){
  cad="Obeso: Tipo III";
}else{
  cad="no existe clasificacion";
}
  return cad;

Y para mostrar esos resultados usamos la clase Java

JOptionPane.showMessageDialog()

en un método llamado verDatos()

Persona verDatos(){
  String res="Datos\n";
  res+="\nnombre: "+nombre;
  res+="\nedad: "+edad;
  res+="\npeso: "+peso;
  res+="\ntalla: "+talla;
  res+="\nIMC obtenido es: "+imc();
  res+="\nClasificacion obtenida es: "+clasificacion();
  JOptionPane.showMessageDialog(null, res,"Resultado",JOptionPane.PLAIN_MESSAGE,new ImageIcon("ferd.jpg"));
  return this;
}
//nota: todo esto dentro de la clase Persona.java

Volvemos a la clase Java principal CalculoIMC:

public static void main(String[] args) {
  //instanciar clase 
  Persona persona= new Persona();

  //asignamos los datos de los atributos, para eso usamos JOptionPane.showInputDialog()
  persona.nombre=JOptionPane.showInputDialog("nombre: ");
  persona.edad=Integer.parseInt(JOptionPane.showInputDialog("edad: "));
  persona.peso=Double.parseDouble(JOptionPane.showInputDialog("peso: "));
  persona.talla=Double.parseDouble(JOptionPane.showInputDialog("talla: "));

  // y al final concatenamos los métodos
  persona.asignar(persona.nombre,persona.edad,persona.peso,persona.talla).verDatos();

Al final se visualiza nuestro ejemplo Java todo en una ventanita:

Vídeos sobre Java

Disfruta también de nuestros artículos sobre Java en formato vídeo. Aprovecha y suscribete a nuestro canal.

Test Java

¿Te atreves a probar tus habilidades y conocimiento en Java con nuestro test?

Test Java
Suscribir
Notificar de
guest
2 Comentarios
Recientes
Anteriores Más votados
Opiniones integradas
Ver todos los comentarios