maxUnpaid unpaidTaken Ber of days of A NumDays object that records the number of days of unpaid leave the employee has taken. A NumDays object that records the ma unpaid vacation the employee may take. Additionally, the class should have members for holding the employee's name and iden- tification number. It should have an appropriate constructor and member functions for storing and retrieving data in any of the member objects. Input Validation: Company policy states that an employee may not accumulate more than 240 hours of paid vacation. The class should not allow the maxVacation object to store a value greater than this amount. Personnel Report NOTE: This assignment assumes you have already completed Programming Challenges 4 and 5. Write a program that uses an instance of the TimeOff class you designed Programming Challenge 5. The program should ask the user to enter the number months an employee has worked for the company. It should then use the Time object to calculate and display the employee's maximum number of sick leave a vacation days. Employees earn 12 hours of vacation leave and 8 hours of sick lea
C++ Visual Studio 2019
NumDays, TimeOff, and Personnel Report
Complete #4, 5 & 6 . Please submit just one file for the classes and main to test the classes. Just create the classes before main and submit only one cpp file. Do not create separate header files. See below code for NumDays class for you to use as a base.
#include <iostream>
using namespace std;
class NumDays
{
private:
double hours;
double days;
public:
NumDays(double h = 0)
{
hours = h;
days = h / 8;
}
void setHours(double h)
{
hours = h;
days = h / 8;
}
void setDays(double d)
{
days = d;
hours = d *8;
}
double getHours()const
{
return hours;
}
double getDays()const
{
return days;
}
//overloaded + operator
NumDays operator+(NumDays& right)
{
NumDays temp;
temp.setHours(hours + right.getHours());
return temp;
}
//overloaded - operator
NumDays operator -(NumDays& right)
{
NumDays temp;
temp.setHours(hours - right.getHours());
return temp;
}
//overloaded prefix ++
NumDays operator ++()
{
++hours;
days = hours / 8;
return *this;
}
//overloaded operator postfix ++
NumDays operator ++(int)
{
hours++;
NumDays temp(hours);
days = hours / 8;
return temp;
}
//overloaded operator prefix --
NumDays operator --()
{
--hours;
days = hours / 8;
return *this;
}
//overloaded operator postfix--
NumDays operator --(int)
{
hours--;
NumDays temp(hours);
days = hours / 8;
return temp;
}
};
int main()
{
NumDays one(25), two(15), three, four;
//display one and two
cout << "One: " << one.getDays() << endl;
cout << "Two: " << two.getDays() << endl;
//Add one and two assign the result to three
three = one + two;
//display three
cout << "Three: " << three.getDays() << endl;
//postfix increment operator
four = three++;
cout << "Four = three++: " << four.getDays() << endl;
//prefix increment operator
four = ++three;
cout << "Four = ++three: " << four.getDays() << endl;
//post fix decrement operator
four = three--;
cout << "Four = three--: " << four.getDays() << endl;
//pre fix decrement operator
four = --three;
cout << "Four = --three: " << four.getDays() << endl;
return 0;
}
Trending now
This is a popular solution!
Step by step
Solved in 3 steps with 1 images