Wednesday, November 9, 2011

Java Equivalent of ITC 110 Assignment 6

Here is the code for the BMI Class


public class BMI {

 /**
  * This class calculates Body
  * Mass Index
  */
 //fields
 private int weight;
 private int feet;
 private int inches;
 private int totalHeightInInches;
 
 //constructors
 public BMI(){
  weight=0;
  feet=0;
  inches=0;
  totalHeightInInches=0;
 }
 
 public BMI(int weightInPounds, int heightInFeet, int additionalInches)
 {
  SetWeight(weightInPounds);
  SetHeightInFeet(heightInFeet);
  SetRemainingInches(additionalInches);
  totalHeightInInches=0;
 }
 
 //mutators and accessors
 public void SetWeight(int w)
 {
    weight=w;
 }
 
 public int GetWeight()
 {
  return weight;
 }
 
 public void SetHeightInFeet(int ft)
 {
  feet=ft;
 }
 
 public int GetHeightInFeet()
 {
  return feet;
 }
 
 public void SetRemainingInches(int inch)
 {
  inches=inch;
 }
 
 public int GetRemainingInches()
 {
  return inches;
 }
 
 //methods
 
 private void CalculateTotalHeightInInches()
 {
  totalHeightInInches=(feet*12)+inches;
 }
 
 public double CalculateBMI()
 {
  CalculateTotalHeightInInches();
  return (double)GetWeight() * 703/(double)
    (totalHeightInInches * totalHeightInInches);
 
 }
 
 public String BMIEvaluation(){
  double b = CalculateBMI();
  String eval="";
  if (b > 30)
   eval="Obese";
  else if (b >24.9)
   eval="Overweight";
  else if (b > 18.4)
   eval="Normal";
  else
   eval="Underweight";
  
  return eval;
   
 }
 
 
 
}


Here is the program class with the main. You could make a display class that is called by the main. That would be a better structure, but I did not specify that as a requirement

import java.util.Scanner;
public class Program {

 /**
  * @param args
  */
 public static void main(String[] args) {
  Scanner scan=new Scanner(System.in);
  
  System.out.println("Enter your wieght in pounds");
  int lbs = scan.nextInt();
  
  System.out.println("enter your height in feet");
  int ft = scan.nextInt();
  
  System.out.println("enter any Remaining inches");
  int inch = scan.nextInt();
  
  BMI bmi = new BMI(lbs, ft, inch);
  double b = bmi.CalculateBMI();
  
  System.out.println("Your BM! is " + b);
  String badNews=bmi.BMIEvaluation();
  System.out.println(badNews);

 }

}

Here is the output



Enter your wieght in pounds
180
enter your height in feet
5
enter any Remaining inches
10
Your BM! is 25.824489795918367
Overweight

No comments:

Post a Comment