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]
3 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]3 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
What type of authentication does the dod require to access sensitive data on mobile devices and/or e-mail?
motikmotik
<span>Actually dod requires a digital type of authentication and a secure password inorder to access sensitive data on mobile devices and email, which may in the form of two step authentication code, then in the form digital phone calls, and then in the form of alphanumeric passwords and finally in the form of finger prints authentications or face recognition verification..</span>
8 0
3 years ago
IF U LOVE CODING CLICK HERE!!! : )
erik [133]

Answer:

I think it is the last one. Or first. Try first though.

Explanation:

Have a Great Day.

8 0
3 years ago
Several people work with data at Erica’s office. She enters data. One of her coworkers enters new product numbers. Another cowor
Dvinal [7]

Answer:

a software program for storing, managing, and retrieving information

Explanation:

8 0
3 years ago
AFLAC, Inc. recently implemented a company policy that all new IT projects must be coordinated and approved by the project manag
Shkiper50 [21]

Answer:

Option (E) is the correct answer to the following question.

Explanation:

Because it helps AFLAC Inc. company to run their project in a more easier way and it also helps its employees to work fast on their new IT projects by installing a WiFi network in their ALFAC inc. branch office. So, that's why they have to install a wireless network.

And the other option is not applied because these activities have to be done in all projects if the project is important either not.

8 0
3 years ago
a circuit has an inductor with an inductive reactance of 230 ohms. this inductor is in series with a 500 ohm resistor. if the so
Amanda [17]

Answer: attached below

Explanation:

8 0
4 years ago
Other questions:
  • What is the purpose of lookup tables in spreadsheet software
    13·2 answers
  • Direct connections provide continuous access to the Internet. Many bandwidth options are associated with direct connections. Whi
    9·1 answer
  • If you were to create a new app for a smartphone or tablet that does not already exist, what would you create?
    10·1 answer
  • Life Decisions Cyber Cafe is a cafe with free Internet service and computers that are linked to various online career opportunit
    15·1 answer
  • Por favor alguem poderia me falar qual PC e melhor: Computador Gamer Fox PC FPS Intel Core i5 8GB (GeForce GTX 1050Ti 4GB GDDR5)
    15·1 answer
  • Consider the following declaration:
    9·1 answer
  • Miley met up with a bunch of her college friends after several years. She told them that she works for the sound department of a
    5·1 answer
  • How are digital and analog data similar? How are they different?
    15·1 answer
  • Please help me i’ll give you brainlist
    13·1 answer
  • Describe who was Alan Turing in 100 words.<br> First to answer will get brainliest.
    7·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!