compute tax.

Create a class TaxReturn with data elds suitable for holding a taxnumber, first name, family name, annual income, current address, and residency status along with the tax rates:

For Residents
Income Tax Rate
0 - \$6,000 Nil
\$6,001 - \$37,000 15c for each \$1 over \$6,000
\$37,001 - \$80,000 \$4,650 plus 30c for each \$1 over \$37,000
\$80,001 - \$180,000 \$17,550 plus 37c for each \$1 over \$80,000
\$180,001 and over \$54,550 plus 45c for each \$1 over \$180,0001

For Non Residents
Income Tax Rate
0 - \$35,000 29c for each \$1
\$35,001 - \$80,000 \$10,150 plus 30c for each \$1 over \$35,000
\$80,001 - \$180,000 \$23,650 plus 38c for each \$1 over \$80,000
\$180,001 and over \$61,650 plus 45c for each \$1 over \$180,000

Assume that the tax data is not subject to change.
Include a function which displays these tables.
Include a default constructor and a constructor for which all non-tax-table elds must be specied.
Include a function computeTax, which determines the tax owed.
Include a function display(ostream& o) to display all the information associated with a taxpayer,
including his tax owed.

``````#include<iostream>
#include<string>

using namespace std;

{
private:
int postCode;
string country;

public:
void setPostCode(int);//two mutator function
void setCountry(string);
void displayAddress(); //display function use on taxreturn

};

{
postCode=2555;
country = "europe";
}
{
country = Country;
}

{
postCode = pCode;
}

{
cout<<"Postcode is: "<<postCode<<" and Country is: "<<country<<endl;
}

class TaxReturn
{
private:
int taxFileNumber;
string FirstName;
string FamilyName;
int AnnualIncome;
bool ResidencyStatus;

public:
TaxReturn(); //Include a default constructor and a constructor for which all non-tax-table elds must be speci.
void setTaxReturn(int, string, string, int, bool);
void ComputeTax();
void DisplayTable();//Include a function which displays these tables.
};

TaxReturn::TaxReturn()
{
taxFileNumber = 0;
FirstName = "james";
FamilyName = "cooper";
AnnualIncome = 6008;
ResidencyStatus = true;

}
void TaxReturn::setTaxReturn(int taxFile, string firstName, string famName, int AnnualInc, bool status)
{
taxFileNumber = taxFile;
FirstName = firstName;
FamilyName = famName;
AnnualIncome = AnnualInc;
ResidencyStatus = status;
}

void TaxReturn::ComputeTax()
{
double TaxRate;

if(ResidencyStatus = true)
{

cout<<"Residence"<<endl;
cout<<AnnualIncome<<endl;

if(AnnualIncome < 6000 && AnnualIncome > 0)
{
cout<<"Tax Rate is Nil"<<endl;

}

else if(AnnualIncome < 37000 && AnnualIncome > 6001)
{
cout<<"15c for each \$1 over \$6,000"<<endl;
TaxRate = (AnnualIncome - 6000) * 0.15;
}

else if(AnnualIncome < 80000 && AnnualIncome > 37001)

{
cout<<"\$4,650 plus 30c for each \$1 over \$37,000"<<endl;
}

else if(AnnualIncome < 180000 && AnnualIncome > 80001)
{
cout<<"\$17,550 plus 37c for each \$1 over \$80,000"<<endl;
}

else if(AnnualIncome > 180001)
{
cout<<"\$54,550 plus 45c for each \$1 over \$180,000"<<endl;
}
}

if(ResidencyStatus = false)
{
cout<<"Non-Residence"<<endl;
}

if(AnnualIncome < 35000 && AnnualIncome > 0)
{
cout<<"29c for each \$1"<<endl;
}

else if(AnnualIncome < 80000 && AnnualIncome > 35001)
{
cout<<"\$10,150 plus 30c for each \$1 over \$35,000"<<endl;

}

else if(AnnualIncome < 180000 && AnnualIncome > 80001)

{
cout<<"\$23,650 plus 38c for each \$1 over \$80,000"<<endl;
}

else if(AnnualIncome > 180001)
{
cout<<"\$61,650 plus 45c for each \$1 over \$180,000"<<endl;
}

}

void TaxReturn:isplayTable()
{

cout<<"for residents\n"<<endl;

cout<<"Income Tax Rate\n"<<endl;
cout<<"0 { \$6,000 Nil"<<endl;
cout<<"\$6,001 { \$37,000 15c for each \$1 over \$6,000"<<endl;
cout<<"\$37,001 { \$80,000 \$4,650 plus 30c for each \$1 over \$37,000"<<endl;
cout<<"\$80,001 { \$180,000 \$17,550 plus 37c for each \$1 over \$80,000"<<endl;
cout<<"\$180,001 and over \$54,550 plus 45c for each \$1 over \$180,000"<<endl;

cout<<"\n\nfor non-residents\n"<<endl;

cout<<"Income Tax Rate\n"<<endl;
cout<<"0 { \$35,000 29c for each \$1"<<endl;
cout<<"\$35,001 { \$80,000 \$10,150 plus 30c for each \$1 over \$35,000"<<endl;
cout<<"\$80,001 { \$180,000 \$23,650 plus 38c for each \$1 over \$80,000"<<endl;
cout<<"\$180,001 and over \$61,650 plus 45c for each \$1 over \$180,000\n\n"<<endl;

cout<<"Taxfile Number: "<<taxFileNumber<<endl;
cout<<"First Name: "<<FirstName<<endl;
cout<<"Family Name: "<<FamilyName<<endl;
cout<<"Annual Income: "<<AnnualIncome<<endl;
cout<<"Residency Status: "<<ResidencyStatus<<endl;

}

int main()
{

TaxReturn aTaxreturn;
aTaxreturn.DisplayTable();
aTaxreturn.ComputeTax();

}``````
2
Contributors
1
2
Views
5 Years
Discussion Span
Last Post by WaltP

And what do you need help with, other than learning how to format your code so we can understand it.

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.