1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
melisa1 [442]
4 years ago
13

In this exercise, you’ll design a "starter" HealthProfile class for a person. The class attributes should include the person’s fir

st name, last name, gender, date of birth (consisting of separate attributes for the month, day and year of birth), height (in inches) and weight (in pounds). Your class should have a constructor that receives this data. For each attribute, provide setters and getters.The class should include methods that calculate and return the user’s age in years, maximum heart rate and target heart rate range, and body mass index (BMI). Write a Java application that prompts for the person’s information, instantiates an object of class HealthProfile for that person and prints the information from that object—including the person’s first name, last name, gender, date of birth, height and weight—then calculates and prints the person’s age in years, BMI, maximum heart rate and target-heart-rate range. It should also display the BMI values chart.
Computers and Technology
1 answer:
Marina86 [1]4 years ago
8 0

Answer:

package healthcare;

import java.util.Calendar;

public class HealthProfile {

  private String firstName;

  private String lastName;

  private char gender;

  private int day;

  private int month;

  private int year;

  private double height;

  private double weight;

  public HealthProfile(String firstName, String lastName, char gender, int day, int month, int year, double height,

          double weight) {

      super();

      this.firstName = firstName;

      this.lastName = lastName;

      this.gender = gender;

      this.day = day;

      this.month = month;

      this.year = year;

      this.height = height;

      this.weight = weight;

  }

  public String getFirstName() {

      return firstName;

  }

  public void setFirstName(String firstName) {

      this.firstName = firstName;

  }

  public String getLastName() {

      return lastName;

  }

  public void setLastName(String lastName) {

      this.lastName = lastName;

  }

  public char getGender() {

      return gender;

  }

  public void setGender(char gender) {

      this.gender = gender;

  }

  public int getDay() {

      return day;

  }

  public void setDay(int day) {

      this.day = day;

  }

  public int getMonth() {

      return month;

  }

  public void setMonth(int month) {

      this.month = month;

  }

  public int getYear() {

      return year;

  }

  public void setYear(int year) {

      this.year = year;

  }

  public double getHeight() {

      return height;

  }

  public void setHeight(double height) {

      this.height = height;

  }

  public double getWeight() {

      return weight;

  }

  public void setWeight(double weight) {

      this.weight = weight;

  }

  public int calculateAge() {

       

      Calendar dateOfBirth = Calendar.getInstance();

      dateOfBirth.set(year, month, day);

      Calendar now = Calendar.getInstance();

      return now.get(Calendar.YEAR) - dateOfBirth.get(Calendar.YEAR);

  }

  public int maximumHeartRate() {

      return 220 - calculateAge();

  }

  public double[] targetHeartRateRange() {

      double[] range = new double[2];

      // Calculate Stating range(50 % of maximumHeartRate)

      range[0] = 0.5 * maximumHeartRate();

      // Calculate End range(85 % of maximumHeartRate)

      range[1] = 0.85 * maximumHeartRate();

      return range;

  }

  public double calculateBMI() {

      return (weight * 703)/(height * height);

  }

  public String getBMIValue()

  {

      double bmi=calculateBMI();

      if(bmi < 18.5)

      {

          return "Underweight";

      }

      else if (bmi>18.5 && bmi<24.9)

      {

          return "Normal";

      }

      else if (bmi>25 && bmi<29.9)

      {

          return "Normal";

      }

      else if (bmi>=30)

      {

          return "Obese";

      }

      return "DafultValue"; //you can give any default value of your choice here if no condition meets the given criteria

  }

  @Override

  public String toString() {

      return "HealthProfile [firstName=" + firstName + ", lastName=" + lastName + ", gender=" + gender + ", Date Of Birth="

              + day + "-" + month + "-" + year + ", height=" + height + ", weight=" + weight + "]";

  }

}

package healthcare;

import java.util.Scanner;

public class TestHealthCare {

  private static Scanner sc;

  public static void main(String[] args) {

      sc = new Scanner(System.in);

      System.out.println("Please enter following details of the Patient");

      System.out.println("First Name");

      String firstName=sc.nextLine();

      System.out.println("Last Name");

      String lastName=sc.nextLine();

      System.out.println("Gender ...... M or F ?");

      char gender=sc.next().charAt(0);

      System.out.println("Date of Birth");

      System.out.println("Day");

      int day=sc.nextInt();

      System.out.println("Month");

      int month=sc.nextInt();

      System.out.println("Year");

      int year=sc.nextInt();

      System.out.println("Height in inches");

      double height =sc.nextDouble();

      System.out.println("weight (in pounds)");

      double weight =sc.nextDouble();

     

      HealthProfile obj=new HealthProfile(firstName, lastName, gender, day, month, year, height, weight);

      int age=obj.calculateAge();

      System.out.println("Patient age is   "+age + " Years");

     

      int maxHeartRate=obj.maximumHeartRate();

      System.out.println("Patient Maximum Heart Rate is   "+maxHeartRate + " beats per minute");

     

      //Call targetHeartRateRange

      double targetHeartRateRange []=obj.targetHeartRateRange();

      System.out.println("Target Heart Range is   "+targetHeartRateRange [0] + " - " +targetHeartRateRange [1]);

     

      //Call calculateBMI

      double bmi=obj.calculateBMI();

      System.out.println("Patient BMI is   "+bmi);

     

      //call getBMIValue

      System.out.println("Patient BMI Value is   "+obj.getBMIValue());

  }

}

Explanation:

  • Inside the calculate the age in years  method, create Date of Birth of Object.
  • Create Current Date .
  • Inside the method maximumHeartRate , create a New Object of HealthProfile class and Call its constructor .
You might be interested in
Janae started an essay on the computer at school. She would like to work on it when she gets home, but she does not have a flash
Marina86 [1]
A) it would be cloud computing
3 0
4 years ago
Read 2 more answers
What is co-operating process
Greeley [361]

Answer: A process is independent if it cannot affect other process or be affected by it

Explanation:

3 0
4 years ago
How many accelerometers are there in an IRS system?
slega [8]

The number of accelerometers that are in an IRS system are three (3).

<h3>What is an IRS system?</h3>

IRS system is an abbreviation for inertial reference system (IRS) and it can be defined as a navigation system that is designed and developed to provide inertial navigation data to various user systems, especially by using a ring-laser gyro.

In the Aviation and Engineering filed, he number of accelerometers that are in an inertial reference system (IRS) system are three (3).

Read more on navigation system here: brainly.com/question/26052911

#SPJ12

5 0
2 years ago
In what country have regulators demanded that facebook stop collecting biometric data on its users?
Helga [31]
America or Australia
6 0
4 years ago
What would best describe the future of cybersecurity?
Andrei [34K]

The best describe the future of cybersecurity is strong security policies offer little protection.

<h3>What is cybersecurity?</h3>

Cybersecurity is the security of data or computer systems. Cybersecurity is provided from the hackers that hacks the data and money online.

As everything is converting digital, the need of cybersecurity is increasing.

Thus, the correct option is B.

Learn more about cybersecurity

brainly.com/question/27560386

#SPJ1

5 0
2 years ago
Other questions:
  • Each of the major DBMS products changes quite rapidly, and keeping DBMS software up-to-date can be a difficult task. As a DBA, w
    14·1 answer
  • Where do deleted files go?
    7·2 answers
  • How do i end my current plan that i never signed up for, the basic one it charged me $24
    11·2 answers
  • When both gears are the same size what will they produce
    11·1 answer
  • If I want to copy a worksheet, I right-click the sheet on the bottom of the screen and click what menu item?
    13·1 answer
  • If you wish to collect data from two related websites with different domains in a single google analytics property, what feature
    8·1 answer
  • 1. [10 marks] We begin with some mathematics regarding uncountability. Let N = {0, 1, 2, 3, . . .} denote the set of natural num
    12·1 answer
  • How ssd is better than normal sata and pata HDD​
    11·1 answer
  • When using the protection options in Excel 2016, what does the Protect Workbook function do?
    8·2 answers
  • Oliver is working for a team that uses object-oriented concepts to design software. Which language would they use to develop thi
    10·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!