Please pay attention to the required data types in the description. The tuple, list and vector classes and their objects are not allowed to be used. 1. Define a new C++ class named “PayStub” that manages pay information: number of hours (integer), hourly pay rate (double). The total payout amount will be calculated based on overtime. Any hour that is more than 40 hours will be paid at 1.5 pay rate. For example, with the hourly pay rate of $10.0 and if the number of hours is 40, the payout amount will be 400 and if the number of hours is 50 it will be (40 * 10)+ (10 * 15) = 550 Please note that because the payout is a calculated value, it should not be part of the data members to make the object as small as possible. The class must provide at least the following two methods: • toString method that returns the string containing all the information about the paystub including the total payout amount. For example, here is the output for different paystubs: 40 hours at $10.0 an hour HOURS(40) RATE($10.00) PAYOUT($400.00) 50 hours at $10.0 an hour HOURS(50) RATE($10.00) PAYOUT($550.00) 60 hours at $10.126 an hour HOURS(60) RATE($10.13) PAYOUT($708.82) Note: it is required that you format the rate and payout with 2 decimal places. • isLarger method that compares the payout between the two PayStub objects and return true if the payout of the current first object is greater than the payout of the second object. Note: you can add as many other methods as you need.
Please pay attention to the required data types in the description. The
tuple, list and vector classes and their objects are not allowed to be used.
1. Define a new C++ class named “PayStub” that manages pay information: number of hours (integer), hourly pay rate (double). The total payout amount will be calculated based on overtime. Any hour that is
more than 40 hours will be paid at 1.5 pay rate.
For example, with the hourly pay rate of $10.0 and if the number of hours is 40, the payout amount will be 400 and if the number of hours is 50 it will be (40 * 10)+ (10 * 15) = 550
Please note that because the payout is a calculated value, it should not be part of the data members to make the object as small as possible.
The class must provide at least the following two methods:
• toString method that returns the string containing all the information about the paystub including the total payout amount.
For example, here is the output for different paystubs:
40 hours at $10.0 an hour
HOURS(40) RATE($10.00) PAYOUT($400.00)
50 hours at $10.0 an hour
HOURS(50) RATE($10.00) PAYOUT($550.00)
60 hours at $10.126 an hour
HOURS(60) RATE($10.13) PAYOUT($708.82)
Note: it is required that you format the rate and payout with 2 decimal places.
• isLarger method that compares the payout between the two PayStub objects and return true if the payout of the current first object is greater than the payout of the second object.
Note: you can add as many other methods as you need.
Trending now
This is a popular solution!
Step by step
Solved in 2 steps with 2 images