I'm working on a program to read the hours worked and rate of pay. It would then calculate the pay, taxes, deductions. I also have to account for overtime which is paid in time and a half. For an example you would input 47 hours and 15 $/hour. It would then supposed to show this as the output.
#include <iostream>
#include <iomanip>
usingnamespace std;
int main()
{
double hours=0;
double rate =0;
double pay=0;
double overtime=0;
double regPay=0;
constdouble incomeTax=0.17;
constdouble provTax=0.07;
constdouble CPP=0.039;
constdouble EI=0.0255;
double TOTAL=0;
double regPay=0;
double OTPay=0;
constdouble OTRate=1.5;
double OTHours=0;
//Get the number of hours worked.
cout << "How many hours worked? ";
cin >> hours;
if (hours > 40)
{
overtime =hours-40;
hours=40;
}
// Get the hourly pay rate.
cout << "How much do you get paid per hour? ";
cin >> rate;
// Calculate the pay.
pay = (hours * rate) + (overtime * (rate*1.5));
//Calculate the regular pay
regPay=rate * 40;
cout<<"Regular pay is: $"<<regPay<<endl;
//Calculate overtime pay
OTHours=(hours-40);
OTPay=OTHours*OTRate;
cout<<"Overtime pay is: $"<<OTPay<<endl;
// Display the pay.
cout << "You have earned $"<<fixed<<setprecision(2)<<pay<<endl<<endl;
//Calculate and print Income Tax
cout<<"Income Tax: $"<<(incomeTax*pay)<<endl;
cout<<"Provincial Tax: $"<<(provTax*pay)<<endl;
cout<<"CPP: $"<<(CPP*pay)<<endl;
cout<<"EI: $"<<(EI*pay)<<endl<<endl<<endl;
TOTAL=pay-((incomeTax*pay)+(provTax*pay)+(CPP*pay)+(EI*pay));
cout<<"Net Income: $"<<TOTAL<<endl;
system ("pause");
return 0;
}
With this code it would not output the regular pay and the overtime pay. Here is what the output is currently. 40 hours regluar time: $600.00
Income Tax: $128.00
Provincial Tax: $53.03
CPP: $29.54
EI: $19.31
Net Income: $526.84
Could someone explain in layman's terms why those two lines do not want to show.
Also, yes I know that some people will call me out on using system("pause"). If you have any questions feel free to ask.
But I want OTHours to equal whatever the overtime will be so it will output just what you get paid for overtime. But i think in those lines you said there are some errors in the if statements and im all out of ideas.