-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathInput.java
86 lines (67 loc) · 2.09 KB
/
Input.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
import java.time.LocalDate;
import java.util.Scanner;
/**
* This class takes dates as an input String
* and converts them to a JulianDate.
*
* @author n-c0de-r
* @version 23.06.21
*/
public class Input {
private int y = LocalDate.now().getYear();
private int m = LocalDate.now().getMonthValue();
private int d = LocalDate.now().getDayOfMonth();
private int year;
private int month;
private int day;
private JulianDate current;
private JulianDate input;
private MetricDate metric;
public Input() {
current = new JulianDate(y, m, d);
metric = new MetricDate();
Scanner s = new Scanner(System.in);
String line = "";
System.out.println("Type 'exit' to terminate.");
System.out.println();
System.out.println("Please enter your birthday.");
System.out.println();
while (!line.equals("exit")) {
System.out.print("First enter the year: ");
line = s.nextLine().trim().toLowerCase();
try {
year = Integer.parseInt(line);
} catch (NumberFormatException e) {
System.err.println("Please enter a number!");
continue;
}
System.out.print("Next enter the month: ");
line = s.nextLine().trim().toLowerCase();
try {
month = Integer.parseInt(line);
} catch (NumberFormatException e) {
System.err.println("Please enter a number!");
continue;
}
System.out.print("Finally, enter the day: ");
line = s.nextLine().trim().toLowerCase();
try {
day = Integer.parseInt(line);
} catch (NumberFormatException e) {
System.err.println("Please enter a number!");
continue;
}
input = new JulianDate(year, month, day);
System.out.println("Your JulianDate number is: " + input.getNumber());
JulianDate daysLived = new JulianDate(current.getNumber() - input.getNumber());
System.out.println("You are " + daysLived.getNumber() + " days old.");
System.out.println("You are born on " + input.getWeekday());
metric.toMetricDate(daysLived);
System.out.println("Your MetricDate birthday is: " + metric.getValue());
}
s.close();
}
public static void main(String[] args) {
Input i = new Input();
}
}