-
Notifications
You must be signed in to change notification settings - Fork 0
/
Date.cpp
101 lines (90 loc) · 2.19 KB
/
Date.cpp
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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
#include <iostream>
#include <vector>
#include <string>
#include "Date.h"
Date::Date(){}
Date::Date(int day, int month, int year){
this->day = day;
this->month = month;
this->year = year;
}
Date::Date(string date_input){
string sday = date_input.substr(0, 2);
string smonth = date_input.substr(2, 2);
string syear = date_input.substr(4, 2);
DateAsString = date_input;
this->day = stoi(sday);
this->month = stoi(smonth);
this->year = stoi(syear);
}
string Date::getDay(){
string sday;
sday = to_string(this->day);
return sday;
}
string Date::getMonth(){
string smonth;
smonth = to_string(this->month);
return smonth;
}
string Date::getYear(){
string syear;
syear = to_string(this->year);
return syear;
}
string Date::getDateAsString(){
return DateAsString;
}
string Date::viewDate(){
if (year < 10){
return this->getDay() "/" this->getMonth() "/200" this->getYear();
}
return this->getDay() "/" this->getMonth() "/20" this->getYear();
}
Date Date::biggerDate(Date cmp){
if (this->year > cmp.year){
return *this;
}
else if (this->year < cmp.year){
return cmp;
}
else{
if (this->month > cmp.month){
return *this;
}
else if (this->month < cmp.month){
return cmp;
}
else {
if (this->day > cmp.day){
return *this;
}
else if (this->day < cmp.day){
return cmp;
}
else{
return *this;
}
}
}
}
bool Date::operator==(Date cmp){
if (this->year == cmp.year){
if (this->month == cmp.month){
if (this->day == cmp.day){
return true;
}
}
}
return false;
}
bool Date::operator>(Date cmp){
if (this->year >= cmp.year){
if (this->month >= cmp.month){
if (this->day > cmp.day){
return true;
}
}
}
return false;
}