
For this lab you will be rewritting the payrol program in C++.
An employee is paid at a rate of $16.68 per hour for the first 40 hours worked in a week. Any hours over that are paid at the overtime rate of one and one half times that. From the worker’s gross pay, 6% is withheld for social security tax, 14% is withheld for federal income tax, 5% is withheld for state income tax, and $10 per week is withheld for union dues. If the worker has three or more dependents, then an additional $35 is withheld to cover the extra cost of health insurance beyond what the employer pays.
Write a program that will prompt the user for the following information:
- the number of hours worked in a week
- the number of dependents
The program will then output the worker’s gross pay, each deduction amount, and the net take-home pay for the week. Write your program so that it allows the calculation to be repeated as often as the user wishes.
The repl.it project for this lab is here: Project Link
Turn in
- Submit the finished program in repl.it
- Turn in the code (the repl.it link) to Moodle, and the run outputs for the trials below.
- Remember to format the code as described and the book and text, and to include comments including complete comment at the beginning of the program.
Coding Requirements:
- Starting with this lab, you should include comments in your code. This includes the name of the program, a description, and you name at the top. Then added comments in the code to break it up into logical sections, with explainations for what the sections does.
- For this lab all decimal point numbers must be printed with 2 digits after the decimal point. (e.g. 2.50 instead of 2.5).
Formatting output in C++
You can set C++ for two decimal places after the decimal point for doubles like this:
#include <iomanip> // This goes with the other includes at the top // These should be in main (once) before any output. cout.precision(2); cout.setf(ios::fixed, ios::floatfield);
Trial Data
Run the program for the following data, turning in a document will all run data (as a Word, text or pdf document)
| Trial | Hours | Dependents |
|---|---|---|
| 1 | 15 | 1 |
| 2 | 40 | 4 |
| 3 | 53 | 3 |
| 4 | 2 | 5 |
Example Run
This program will ask you how many hours you worked, and calculate your
taxes, dues, gross pay, and net pay.
How many hours did you work? 20
How many dependents do you have? 1
Regular hours: 20.00 (at $16.68 an hour)
Overtime hours: 0.00 (at $25.02 an hour)
Total hours: 20.00
Gross pay is $333.60
Social Security tax: $20.02
Federal taxes: $46.70
State taxes: $16.68
Union Dues: $10.00
Total Deductions: $93.40
Net Pay: $240.20.
Would you like to calculate another week's pay? (y or n) y
How many hours did you work? 48
How many dependents do you have? 4
Regular hours: 40.00 (at $16.68 an hour)
Overtime hours: 8.00 (at $25.02 an hour)
Total hours: 48.00
Gross pay is $867.36
Social Security tax: $52.04
Federal taxes: $121.43
State taxes: $43.37
Union Dues: $10.00
Family Health Insurance: $35.00 (additional insurance premiums for your family)
Total Deductions: $261.84
Net Pay: $605.52.
Would you like to calculate another week's pay? (y or n) y
How many hours did you work? 3
How many dependents do you have? 4
Regular hours: 3.00 (at $16.68 an hour)
Overtime hours: 0.00 (at $25.02 an hour)
Total hours: 3.00
Gross pay is $50.04
Social Security tax: $3.00
Federal taxes: $7.01
State taxes: $2.50
Union Dues: $10.00
Family Health Insurance: $35.00 (additional insurance premiums for your family)
Total Deductions: $57.51
Your dues and insurance obligations outstripped your pay by $-7.47.
Would you like to calculate another week's pay? (y or n) n
Thank you for using this program.
Grading Table
| Requirement | Grading Comments | Points | Score |
|---|---|---|---|
| Correct output on required trial data | 60 | ||
| Dollar amount with 2 places after decimal point. | 10 | ||
| Appropriate code formatting | 5 | ||
| Meaningful identifier names (variables) | 5 | ||
| Description Comments on top | 5 | ||
| Section comments throughout | 5 | ||
| Document with trial runs included | 10 | ||
| Total | 100 |
