I am to write a program that can be used to calculate the federal tax. The tax is calculated as follows: For single people, the standard exemption is $4,000; for married people, the standard exemption is $7,000. A person can also put up to 6% of his or her gross income in a pension plan. The tax rates are as follows: IF the taxable income is
- Between $0 & $15,000, the tax rate is 15%
- Between $15,001 and $40,000, the tax is $2,250 plus 25% of the taxable income over $15,000
- Over $40,000, the tax is $8,460 plus 35% of the taxable income over $40,000
The user should enter:
- Marital Status
- If the martial status is "married" ask for the number of children under the age of 14
- Gross salary (If the marital status is "married" and both spouses have income, enter the combined salary
- Percentage of gross income contributed to a pension fund.
The program must consist of at least the following functions:
a. function getData: this function asks the user to enter the relevant data
b. function taxAmount: this function computes and returns the tax owed
To calculate the taxable income, subtract the sum of the standard exemption, the amount contributed to a pension plan, and the person exemption, which is $1,500 per person.
SO far the code I have is:
#include <iostream>
#include <string>
using namespace std;
int getNumChildren();
double taxAmount(int,double,double,int);
int main ()
{
void getData(); // function prototype
getData(); // function call
return 0;
}
void getData()
{
char status, answer;
int noofChildren;
double salary, amtInPension;
int numPerson, standardExemption;
double tax;
cout << "Please enter your Marital Status: [M]arried or [S]ingle ";
cin >> status;
cout << endl;
if (status == 'm' || 'M')
{
noofChildren = getNumChildren();
cout << "Do both spouses earn income? Please enter [Y]es or [N]o. ";
cin >> answer;
cout << endl;
if (answer == 'y' || 'Y')
{
cout << "Please enter your combined salary: ";
cin >> salary;
cout << endl;
}
else if (answer == 'n' || 'N')
{
cout << "Please enter salary: ";
cin>> salary;
cout<< endl;
}
numPerson = 2 + noofChildren;
}
else
{
cout << "Please enter your salary: ";
cin >> salary;
cout << endl;
numPerson = 1;
}
cout << "Please enter your contribution to the Pension Plan: ";
cin >> amtInPension;
cout << endl;
tax = taxAmount(numPerson, salary, amtInPension, standardExemption);
}
int getNumChildren()
{
int children;
cout << "Please enter number of Children under the age of 14: ";
cin >> children;
cout << endl;
return children;
}
double taxAmount(int numPerson, double salary, double amtInPension, int standardExemption)
{
double taxableIncome;
taxableIncome = salary - (1500.00 * numPerson) - amtInPension - standardExemption;
return(taxableIncome);
}
I've been having problems with the If/Else statements. Whenever I choose Married & Yes it works perfectly but whenever I choose Married & no it still says "Please enter combined salary" and I can't get the Single side to work period. It still outputs everything for the married side. (I hope this makes sense) And I don't think the function for taxAmount is right. I don't know where to begin with it though. Any help would be appreciated!!!!
-Amanda