Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package ChenIkCie_A2;
- import java.io.File;
- import java.io.FileNotFoundException;
- import java.util.Scanner;
- // Name : Chen Ik Cie
- // Full time student
- // Tutorial group : T05
- // Declaration : I do this on my own
- public class ChenIkCie_A2 {
- public static void main(String[] args) throws FileNotFoundException{
- new HRatesTest();
- }
- }
- class HRates {
- String fName;
- String lName;
- Date dob;
- int Year;
- //Constructor
- public HRates (String fName, String lName, Date dob, int Year) {
- setfName(fName);
- setlName(lName);
- setDOB(dob);
- setYear(Year);
- }
- //Copy Constructor
- public HRates (HRates hr) {
- setfName(hr.getfName());
- setlName(hr.getlName());
- setDOB(hr.getDOB());
- setYear(hr.getYear());
- }
- public void setfName (String fName) {
- this.fName = fName;
- }
- public String getfName () {
- return fName;
- }
- public void setlName (String lName) {
- this.lName = lName;
- }
- public String getlName () {
- return lName;
- }
- public void setDOB (Date dob) {
- this.dob = dob;
- }
- public Date getDOB () {
- return dob;
- }
- public void setYear (int Year) {
- this.Year = Year;
- }
- public int getYear () {
- return Year;
- }
- int maxHRate;
- public int getMaxHRate () {
- maxHRate = 220-getAge();
- return maxHRate;
- }
- int age;
- public int getAge () {
- age = getYear() - getDOB().getYear();
- return age;
- }
- double minTarget;
- public double getMinTargetHRate () {
- minTarget = (getMaxHRate()*50)/100;
- return minTarget;
- }
- double maxTarget;
- public double getMaxTargetHRate () {
- maxTarget = (getMaxHRate()*85)/100;
- return maxTarget;
- }
- public void printWord()
- {
- System.out.printf ("\nName = %s%s", fName, lName);
- System.out.printf ("\nDate of birth = %d %s %d", dob.getDay(), dob.getMonth(), dob.getYear());
- System.out.printf ("\nCurrent Year = " + Year);
- System.out.printf ("\nYour Age = %d %n", getAge());
- System.out.printf ("Clinic analysis, based on your age: ");
- System.out.printf ("\n\tYour maximum heart rate is " + getMaxHRate());
- System.out.printf ("\n\tYour minimum heart rate is " + getMinTargetHRate());
- System.out.printf ("\n\tYour maximum target heart rate is " + getMaxTargetHRate());
- System.out.printf ("\n");
- }
- }
- class Date {
- int day;
- Month month;
- int year;
- int age;
- //Constructor
- public Date () {
- setDate(1, Month.Jan, 2019);
- }
- //Copy Constructor
- public Date (Date d) {
- setDate(d.getDay(), d.getMonth(), d.getYear());
- }
- public int getDay () {
- return day;
- }
- public Month getMonth () {
- return month;
- }
- public int getYear () {
- return year;
- }
- //Parameter Constructor
- public Date (int day, Month month, int year) {
- setDate(day, month, year);
- }
- public void setDate (int day, Month month, int year) {
- this.day = day;
- this.month = month;
- this.year = year;
- }
- }
- //Enum for defining months
- enum Month {
- Jan,
- Feb,
- Mar,
- Apr,
- May,
- Jun,
- Jul,
- Aug,
- Sept,
- Oct,
- Nov,
- Dec
- }
- class HRatesTest {
- public HRatesTest () throws FileNotFoundException {
- //creating file and object to be read
- File files = new File ("src/infile.txt");
- Scanner input = new Scanner (files);
- Date date = new Date ();
- String fName, secondfName;
- String lName, secondlName;
- int Year, secondYear;
- //store details in variables
- fName = input.nextLine();
- lName = input.nextLine();
- date.setDate (input.nextInt(), Month.valueOf (input.next()), input.nextInt());
- Year = input.nextInt();
- //object for this class
- HRates hr1 = new HRates (fName, lName, date, Year);
- hr1.printWord();
- input.nextLine();
- //second data
- secondfName = input.nextLine();
- secondlName = input.nextLine();
- Date date1 = new Date();
- date1.setDate (input.nextInt(), Month.valueOf (input.next()), input.nextInt());
- secondYear = input.nextInt();
- HRates hr2 = new HRates (secondfName, secondlName, date1, secondYear);
- hr2.printWord();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement