Calcular el índice de masa corporal con Java

18/Dic/2012 Java , , 1 Comentario

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.

  1.  
  2. import javax.swing.JOptionPane;
  3.  
  4. class CalculoIMC{
  5. public static void main(String[] args) {
  6. //... falta más código por escribir
  7. }
  8. }
  9.  
  10. //aqui esta la clase Persona
  11. class Persona{
  12. //atributos de la clase
  13. public String nombre;
  14. public int edad;
  15. public double peso,talla;
  16. //...
  17. }

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

  1.  
  2. Persona asignar(String n,int e,double p,double t){
  3. nombre=n;
  4. edad=e;
  5. peso=p;
  6. talla=t;
  7. return this;
  8. }

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

  1. public double imc(){
  2. return peso/(talla*talla);
  3. }

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

  1. String cad="";
  2. if(imc()<16.00){
  3. cad="Infrapeso: Delgadez Severa";
  4. }else if(imc()<=16.00 || imc()<=16.99){
  5. cad="Infrapeso: Delgadez moderada";
  6. }else if(imc()<=17.00 ||imc()<=18.49){
  7. cad="Infrapeso: Delgadez aceptable";
  8. }else if(imc()<=18.50 || imc()<=24.99){
  9. cad="Peso Normal";
  10. }else if(imc()<=25.00 || imc()<=29.99){
  11. cad="Sobrepeso";
  12. }else if(imc()<=30.00 || imc()<=34.99){
  13. cad="Obeso: Tipo I";
  14. }else if(imc()<=35.00 || imc()=40.00){
  15. cad="Obeso: Tipo III";
  16. }else{
  17. cad="no existe clasificacion";
  18. }
  19. return cad;

Y para mostrar esos resultados usamos la clase Java

JOptionPane.showMessageDialog()

en un método llamado verDatos()

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

Volvemos a la clase Java principal CalculoIMC:

  1. public static void main(String[] args) {
  2. //instanciar clase
  3. Persona persona= new Persona();
  4.  
  5. //asignamos los datos de los atributos, para eso usamos JOptionPane.showInputDialog()
  6. persona.nombre=JOptionPane.showInputDialog("nombre: ");
  7. persona.edad=Integer.parseInt(JOptionPane.showInputDialog("edad: "));
  8. persona.peso=Double.parseDouble(JOptionPane.showInputDialog("peso: "));
  9. persona.talla=Double.parseDouble(JOptionPane.showInputDialog("talla: "));
  10.  
  11. // y al final concatenamos los métodos
  12. 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


Difunde el Conocimiento

Si te ha gustado el artículo o te ha sido de utilidad, no dejes de compartirlo con tus amigos en las redes sociales... Te estaremos muy agradecidos. :-D