Computer (fix the error in the code and comment it) Need in 4 hours
errors in compiling with GCC Cygwin. Is this in C++? hw01.cpp: In constructor ‘DayOfYear::DayOfYear(int, int)’: hw01.cpp:60:6: error: request for member ‘month’ in ‘this’, which is of pointer type ‘DayOfYear* const’ (maybe you meant to use ‘->’ ?) hw01.cpp:61:6: error: request for member ‘day’ in ‘this’, which is of pointer type ‘DayOfYear* const’ (maybe you meant to use ‘->’ ?) Code:----- #include <iostream> #include <cstdlib> #include <cmath> class DayOfYear { private: int month; int day; void testDate(); public: DayOfYear(int month, int day); DayOfYear(int month); DayOfYear(); void input(); void output(); int getMonthNumber(); int getDay(); }; const DayOfYear operator +(const DayOfYear& date1, const DayOfYear& date2); //addition const DayOfYear operator -(const DayOfYear& date1, const DayOfYear& date2); //subtraction bool operator ==(const DayOfYear& date1, const DayOfYear& date2); //compare const DayOfYear operator -(const DayOfYear& date1, const DayOfYear date2); //negation const DayOfYear operator >(const DayOfYear& date1, const DayOfYear date2); //greater const DayOfYear operator <(const DayOfYear& date1, const DayOfYear date2); //lesser int main() { DayOfYear date_add; DayOfYear date_subtract; DayOfYear date_comparison; DayOfYear date_equality; date_add.input(); //test std::cout << date_add.getDay() << std::endl; system("pause"); //windows pause (comment out for linux) return 0; } DayOfYear::DayOfYear(int month, int day) { this.month=month; this.day=day; } DayOfYear::DayOfYear(int month) { this.month=month; } DayOfYear::DayOfYear() { month=1; day=1; } void DayOfYear::input() { std::cout << "Enter the month as a number: "; std::cin >> month; std::cout << "Enter the day of the month: "; std::cin >> day; testDate(); } void DayOfYear::output() { switch (month) { case 1: std::cout << "January "; break; case 2: std::cout << "February "; break; case 3: std::cout << "March "; break; case 4: std::cout << "April "; break; case 5: std::cout << "May "; break; case 6: std::cout << "June "; break; case 7: std::cout << "July "; break; case 8: std::cout << "August "; break; case 9: std::cout << "September "; break; case 10: std::cout << "October "; break; case 11: std::cout << "November "; break; case 12: std::cout << "December "; break; default: std::cout << "Error in DayOfYear::output."; } std::cout << day; } int DayOfYear::getMonthNumber() { return month; } int DayOfYear::getDay() { return day; } void DayOfYear::testDate() { if (month < 1 || month > 12) { std::cout << "Illegal month value!\n"; system("pause"); //windows pause for testing (comment out for linux) exit(1); } if (day < 1 || day > 30) { std::cout << "Illegal day value!\n"; system("pause"); //windows pause for testing (comment out for linux) exit(1); } } const DayOfYear operator +(const DayOfYear& date1, const DayOfYear& date2) //WIP { int total_days = (date1.getMonthNumber()*30) + date2.getDay(); //testing int var_month = total_days / 30; int var_day = total_days % 30; return DayOfYear(var_month, var_day); } const DayOfYear operator -(const DayOfYear& date1, const DayOfYear& date2) //WIP { int sub_days = (date1.getMonthNumber()*30) - date2.getDay(); //testing int var_month = total_days / 30; int var_day = total_days % 30; return DayOfYear(var_month, var_day); } bool operator ==(const DayOfYear& date1, const DayOfYear& date2) { if(date1.getMonthNumber()==date2.getMonthNumber() && return(1); else return(0); } const DayOfYear operator >(const DayOfYear& date1, const DayOfYear date2) { if(date1.getMonthNumber()>date2.getMonthNumber() && date1.getDay()>date2.getDay()) return(date1); else return(date2); } const DayOfYear operator <(const DayOfYear& date1, const DayOfYear date2) { if(date1.getMonthNumber()<date2.getMonthNumber() && date1.getDay()<date2.getDay()) return(date1); else return(date2); } }