Question: DO part 2 in c++ Main.cpp #include Date.h #include using namespace std; int main() { Date date1; int month, day, year; cout cout cin >>
DO part 2 in c++
Main.cpp
#include "Date.h"
#include
using namespace std;
int main()
{
Date date1;
int month, day, year;
cout
cout
cin >> month >> day >> year;
date1.setMonth(month);
date1.setDay(day);
date1.setYear(year);
cout
cin >> month >> day >> year;
//Calling constructor with three arguments
Date date2(month, day, year);
/*----------------------------------------------------------*/
/*-PART 1 Change this code to the comments indicated beside-*/
/*----------------------------------------------------------*/
cout
if (date1 == date2) //if (date1.sameMonth(date2))
cout
else
cout
++date1;
++date2;
cout
cout
/*----------------------------------------------------------*/
/*-PART 2 Uncomment these lines */
/*----------------------------------------------------------*/
Date date3, date4;
date3 = date1 + 82;
date4 = 6 + date2;
cout
cout
return 0;
}
Date.cpp
#include "Date.h"
Date::Date()
{
month = 0;
day = 0;
year = 0;
}
Date::Date(int m, int d, int y)
{
month = m;
day = d;
year = y;
}
int Date::endOfMonth() const
{
int lastDay = 0;
switch (month)
{
case 1:
lastDay = 31;
break;
case 2:
if ((year%400==0)||((year%4==0 && year%100!=0)))
lastDay = 29;
else
lastDay = 28;
break;
case 3:
lastDay = 31;
break;
case 4:
lastDay = 30;
break;
case 5:
lastDay = 31;
break;
case 6:
lastDay = 30;
break;
case 7:
lastDay = 31;
break;
case 8:
lastDay = 31;
break;
case 9:
lastDay = 30;
break;
case 10:
lastDay = 31;
break;
case 11:
lastDay = 30;
break;
case 12:
lastDay = 31;
break;
}
return lastDay;
}
int Date::getMonth()const
{
return month;
}
int Date::getDay()const
{
return day;
}
int Date::getYear()const
{
return year;
}
void Date::setMonth(int m)
{
month = m;
}
void Date::setDay(int d)
{
day = d;
}
void Date::setYear(int y)
{
year = y;
}
void Date::printDate() const
{
cout
}
bool Date::operator==(const Date& myDate) const
{
if (month==myDate.month && day==myDate.day && year==myDate.year)
return true;
else
return false;
}
Date Date::operator++()
{
if (day==endOfMonth()) //endOfMonth returns 28, 29, 30 or 31 depending on month
{
if (month==12)
{
year+=1;
month=1;
}
else
month+=1;
day=1;
}
else
day+=1;
return *this;
}
ostream& operator
{
os
return os;
}
Date.h
#include
using namespace std;
class Date
{
private:
int month;
int day;
int year;
public:
Date();
Date(int m, int d, int y);
int endOfMonth() const;
int getMonth() const;
int getDay() const;
int getYear() const;
void setMonth(int m);
void setDay(int d);
void setYear(int y);
void printDate() const;
bool operator==(const Date& myDate) const;
Date operator++();
};
ostream& operator 4. Lab Exercise Overloading Part 1 1. Change the sameMonth function into a overloaded == operator. This will be a member function as demonstrated in the notes. Remember that you will want to compare the month, day, and year. 2. Add an overloaded ++ operator (as a member function, shown in the notes) 3. Just for fun, change the printDate function into an overloaded ./main Date is: 0/0/0 Please enter integer month, day, and year separated by spaces: Please enter integer month, day, and year separated by spaces: Date is: 1/1/1 Date is: 2/2/2 The dates are different. After incrementing Date is: 1/2/1 Date is: 2/3/2 After addition Date is: 1/2/1 Date is: 2/3/2 Date is: 3/25/1 Date is: 2/9/2 4. Lab Exercise Overloading Part 1 1. Change the sameMonth function into a overloaded == operator. This will be a member function as demonstrated in the notes. Remember that you will want to compare the month, day, and year. 2. Add an overloaded ++ operator (as a member function, shown in the notes) 3. Just for fun, change the printDate function into an overloaded ./main Date is: 0/0/0 Please enter integer month, day, and year separated by spaces: Please enter integer month, day, and year separated by spaces: Date is: 1/1/1 Date is: 2/2/2 The dates are different. After incrementing Date is: 1/2/1 Date is: 2/3/2 After addition Date is: 1/2/1 Date is: 2/3/2 Date is: 3/25/1 Date is: 2/9/2
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
