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
Please someone participate in my typing race ...
dsp73

Answer:

what is typing race

this link can not be clicked

8 0
3 years ago
Complete the sentence describing computer languages.
kari74 [83]

Answer:

A low level language uses zeros and ones.

Explanation:

7 0
4 years ago
Determine the "answer" to the function according to the spreadsheet below: =SUM(A1:A3)/2
nataly862011 [7]
If this is the full question " <span>Which of the following formulas is equivalent to =SUM(A1:A3)? A. =A1+A3 B. =A1+A2+A3 B. =A2 D. =A3-A1"


The answer is </span>
<span>B. =A1+A2+A3 formulas is equivalent to =SUM(A1:A3)</span>
4 0
4 years ago
Why is it important to use safe hand tool?​
xxTIMURxx [149]
Safe tool use contributes to a safer, more efficient work environment.
7 0
3 years ago
Read 2 more answers
Match each term with the statement that best describes it.
chubhunter [2.5K]

Answer:

Field: A placeholder for information that changes

Explanation:

The are on the page where we write our information. Each page consist of field area where we write text, insert figures and tables.

Table: A grid of columns and rows that you can fill with text and graphics

Explanation:

The arrangement of row and columns to organize the information for the purpose of analyzing and comparing is called Table.

Section break: A formatting mark that divides a document into parts that can be formatted

Explanation:

If we want to divide the document in terms of formatting, we apply section breaks in the document. e.g. If we are writing a document in landscape mode and want to insert few pages in portrait mode then we apply section break.

Header: Text or graphics that appear at the top of every page in a document

Explanation:

The place at the top of the page, where we want to insert some text that should be fixed on each page such as page number, chapter name or book name. We use header.

Manual page break  of the next page: A formatting mark that forces the text following the mark to begin at the top

Explanation:

If we complete the working on one page and want to start work on new page. we apply page break so that any change in formatting of the previous page could not affect the new page.

Footer:Text or graphics that appear at the bottom of every page in a document

Explanation:

The place at the bottom of the page, where we want to insert some text that should be fixed on each page such as page number.

Bibliography: A list of the sources used to create a document

Explanation:

The list of sources that we use to complete our document, from we read some literature to support our arguments. It has been added at the end of the document.

Citation:  A parenthetical reference in the document text that gives credit to a source

Explanation:

The information that we read from other document and insert in our document, assign it a reference to insert in bibliography section.

Margin: The blank area between the edge of the text and the edge of the page

Explanation:

The space between text and edges of the the page from top, bottom, left and right side is called margin.

6 0
3 years ago
Other questions:
  • What following functions does browser perform
    5·1 answer
  • How to fix delayed responses on Windows computer?
    9·1 answer
  • Match the ocean floor feature with its characteristic.
    6·1 answer
  • Which of the following is a correct statement about writing down passwords on a ""cheat sheet?""
    7·1 answer
  • Create a Java program that will store 10 student objects in an ArrayList, ArrayList. A student object consists of the following
    14·1 answer
  • Someone plzzzz help me
    5·1 answer
  • Donna often travels around the world. When she travels, she needs to access her emails from different locations. However, to kee
    7·2 answers
  • if you are trying to reduce the cost of college, which of the following strategies is likely to save you the most money?
    9·1 answer
  • Need the answer ASAP!!! I’ll mark brainliest if correct
    12·2 answers
  • What types of character Microsoft Excel understand​
    6·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!