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++DO part 2 in c++Main.cpp #include "Date.h" #include using namespace std; intmain() { Date date1; int month, day, year; cout cout cin >>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

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!