Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

I need this in C++ I need to create an employee class with the following specification: public: Employee(char[],char[],float); //Constructor float CalculatePay(float,int); //Procedure float getGrossPay(float,int); //Procedure

I need this in C++

I need to create an employee class with the following specification:

public:

Employee(char[],char[],float); //Constructor

float CalculatePay(float,int); //Procedure

float getGrossPay(float,int); //Procedure

float getNetPay(float); //Procedure

void toString(); //Procedure

int setHoursWorked(int); //Procedure

float setHourlyRate(float); //Procedure

private:

double Tax(float); //Utility Procedure

char MyName[20]; //Property

char JobTitle[20]; //Property

float HourlyRate; //Property

int HoursWorked; //Property

float GrossPay; //Property

float NetPay; //Property

---------------------------------------------------------------------------------------------

Here are the needs for the implementation of that class:

1) The constructor inputs the Name, Job Title and Hourly rate of

the employee.

2) All other properties are initialized to zero in the constructor.

3) The Tax utility routine calculates the tax based on

.1 for GrossPay < 500,

.2 for GrossPay<1000 but greater than 500, and

.3 for anything above 1000.

4) The Set procedures simply write and return the obvious

properties.

5) The toString procedure prints all the properties.

6) The getGrossPay procedure calculates straight time for hours

worked < 40, time and 1/2 for hours worked < 50 but greater than

40, double time for all hours above 50. The inputs to this

routine are the hourly rate and the hours worked.

7) The net pay routine returns the gross pay subtracting

off any taxes. Realize that the Tax procedure is utilized

but these taxes are progressive rates for income above the

cutoff limit as described in 3). Taxes are calculated for

10% below 500, 20% for amounts between 500 and 1000 and

finally anything above 1000 is calculated at the 30% rate.

8) The Hoursworked must be > 0 and < 84

9) The Hourlyrate must be > 0 and < 200

10) The calculate pay routine returns the net pay.

return getNetPay(getGrossPay(setHourlyRate(x)

,setHoursWorked(y)));

---------------------------------------------------------------------------------------------

Here is a driver program to test the .hfile and .cpp file:

Employee Mark("Mark","Boss",215.50);

Mark.setHoursWorked(-3);

Mark.toString();

Mark.CalculatePay(Mark.setHourlyRate(20.0),

Mark.setHoursWorked(25));

Mark.toString();

Mark.CalculatePay(Mark.setHourlyRate(40.0),

Mark.setHoursWorked(25));

Mark.toString();

Mark.CalculatePay(Mark.setHourlyRate(60.0),

Mark.setHoursWorked(25));

Mark.toString();

Employee Mary("Mary","VP",50.0);

Mary.toString();

Mary.CalculatePay(Mary.setHourlyRate(50.0),

Mary.setHoursWorked(40));

Mary.toString();

Mary.CalculatePay(Mary.setHourlyRate(50.0),

Mary.setHoursWorked(50));

Mary.toString();

Mary.CalculatePay(Mary.setHourlyRate(50.0),

Mary.setHoursWorked(60));

Mary.toString();

---------------------------------------------------------------------------------------------

Here is the output that should result:

Unacceptable Hourly Rate Unacceptable Hours Worked Name = Mark Job Title = Boss Hourly Rate = 0 Hours Worked = 0 Gross Pay = 0 Net Pay = 0 Name = Mark Job Title = Boss Hourly Rate = 20 Hours Worked = 25 Gross Pay = 500 Net Pay = 450 Name = Mark Job Title = Boss Hourly Rate = 40 Hours Worked = 25 Gross Pay = 1000 Net Pay = 850 Name = Mark Job Title = Boss Hourly Rate = 60 Hours Worked = 25 Gross Pay = 1500 Net Pay = 1200 Name = Mary Job Title = VP Hourly Rate = 50 Hours Worked = 0 Gross Pay = 0 Net Pay = 0 Name = Mary Job Title = VP Hourly Rate = 50 Hours Worked = 40 Gross Pay = 2000 Net Pay = 1550 Name = Mary Job Title = VP Hourly Rate = 50 Hours Worked = 50 Gross Pay = 2750 Net Pay = 2075 Name = Mary Job Title = VP Hourly Rate = 50 Hours Worked = 60 Gross Pay = 3750 Net Pay = 2775

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Beginning C# 5.0 Databases

Authors: Vidya Vrat Agarwal

2nd Edition

1430242604, 978-1430242604

More Books

Students also viewed these Databases questions

Question

Why is the System Build Process an iterative process?

Answered: 1 week ago