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.

C++ for Engineers and Scientists
4th Edition
ISBN:9781133187844
Author:Bronson, Gary J.
Publisher:Bronson, Gary J.
Chapter12: Adding Functionality To Your Classes
Section12.2: Providing Class Conversion Capabilities
Problem 5E
icon
Related questions
Question

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.

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 2 images

Blurred answer
Knowledge Booster
ADT and Class
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ for Engineers and Scientists
C++ for Engineers and Scientists
Computer Science
ISBN:
9781133187844
Author:
Bronson, Gary J.
Publisher:
Course Technology Ptr
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning