diff --git a/PA05-1012/Project_5.c b/PA05-1012/Project_5.c index 15a3b0a..5d9525c 100644 --- a/PA05-1012/Project_5.c +++ b/PA05-1012/Project_5.c @@ -6,13 +6,13 @@ // AZ tax Baseline RATE const double AZ_TAX_BASELINE_RATE = 0.0259; // AZ tax Baseline LIMIT -const double AZ_TAX_BASELINE_LIMIT = 27808.5; +const double AZ_TAX_BASELINE_LIMIT = 27808.5; // AZ tax First bracket RATE -const double AZ_TAX_FIRST_BRACKET_RATE = 0.0334; - // AZ tax First bracket LIMIT +const double AZ_TAX_FIRST_BRACKET_RATE = 0.0334; + // AZ tax First bracket LIMIT const double AZ_TAX_FIRST_BRACKET_LIMIT = 55615.5; // AZ tax Second bracket RATE -const double AZ_TAX_SECOND_BRACKET_RATE = 0.0417; +const double AZ_TAX_SECOND_BRACKET_RATE = 0.0417; // AZ tax Second bracket LIMIT const double AZ_TAX_SECOND_BRACKET_LIMIT = 166843.5; // AZ tax MAX bracket RATE @@ -20,27 +20,27 @@ const double AZ_TAX_MAX_RATE = 0.045; // Federal taxes // Minimum FED Tax RATE -const double FED_TAX_BASELINE_RATE = 0.1000; +const double FED_TAX_BASELINE_RATE = 0.1000; // FED tax Baseline LIMIT -const double FED_TAX_BASELINE_LIMIT = 10275.5; +const double FED_TAX_BASELINE_LIMIT = 10275.5; // FED tax First bracket RATE -const double FED_TAX_FIRST_BRACKET_RATE = 0.1200; - // FED tax First bracket LIMIT +const double FED_TAX_FIRST_BRACKET_RATE = 0.1200; + // FED tax First bracket LIMIT const double FED_TAX_FIRST_BRACKET_LIMIT = 41775.5; // FED tax Second bracket RATE -const double FED_TAX_SECOND_BRACKET_RATE = 0.2200; +const double FED_TAX_SECOND_BRACKET_RATE = 0.2200; // FED tax Second bracket LIMIT const double FED_TAX_SECOND_BRACKET_LIMIT = 89075.5; // FED tax Third bracket RATE -const double FED_TAX_THIRD_BRACKET_RATE = 0.2400; - // FED tax Third bracket LIMIT +const double FED_TAX_THIRD_BRACKET_RATE = 0.2400; + // FED tax Third bracket LIMIT const double FED_TAX_THIRD_BRACKET_LIMIT = 170050.5; // FED tax Fourth bracket RATE -const double FED_TAX_FOURTH_BRACKET_RATE = 0.3200; - // FED tax Fourth bracket LIMIT +const double FED_TAX_FOURTH_BRACKET_RATE = 0.3200; + // FED tax Fourth bracket LIMIT const double FED_TAX_FOURTH_BRACKET_LIMIT = 215950.5; // FED tax Fifth bracket RATE -const double FED_TAX_FIFTH_BRACKET_RATE = 0.3500; +const double FED_TAX_FIFTH_BRACKET_RATE = 0.3500; // FED tax Fifth bracket LIMIT const double FED_TAX_FIFTH_BRACKET_LIMIT = 539900.5; // AZ tax MAX bracket RATE @@ -51,8 +51,8 @@ const double FED_TAX_MAX_RATE = 0.3700; const double TAX_SSN = 0.0620; // MC Tax RATE const double TAX_MC = 0.0145; - - + + // Percent Conversion, ratio const double PERCENTAGE_CONVERSION = 100; @@ -75,7 +75,7 @@ const char SPACE_PIPE[] = " |"; // function prototypes double calculateFederalTax( double adjustedIncome ); double calculateArizonaTax( double adjustedIncome ); - + void displayResultsTable( double taxArizona, double taxFederal, double incomeAfterTaxes, double effectiveTax, double taxTotal, double incomeLocked); @@ -83,7 +83,6 @@ void displayResultsTable( double taxArizona, double taxFederal, // main program int main() { - // TODO: Write program as specified // show title // function: printString, printEndline(s) printEndline(); @@ -91,68 +90,66 @@ int main() printEndline(); printString( TOP_LINE ); printEndlines( TWO_ENDLINES ); - + // initialize variables/functions double totalIncome, contributionToIRA, adjustedIncome; double taxFederal, taxArizona; double taxSSN, taxMC, taxTotal; double incomeAfterTaxes; double effectiveTax, incomeLocked; - + // get user input // section title // function: printString, printEndline printString( "Provide your Tax information below." ); printEndline(); - + // total income $ // function: promptForDouble totalIncome = promptForDouble("Total income $: "); - + // IRA contributions $ // function: promptForDouble contributionToIRA = promptForDouble("Your IRA contributions $: "); - + // conduct computations // adjust income by IRA contributions, $ adjustedIncome = totalIncome - contributionToIRA; // calculate federal tax, $ taxFederal = calculateFederalTax(adjustedIncome); - + // calculate AZ tax, $ taxArizona = calculateArizonaTax(adjustedIncome); - + // calculate SSN tax, $ taxSSN = adjustedIncome * TAX_SSN; - + // calculate MC tax, $ taxMC = adjustedIncome * TAX_MC; - + // calculate Total tax to be payed, $ - taxTotal = taxFederal + taxArizona + taxSSN + taxMC; - + taxTotal = taxFederal + taxArizona + taxSSN + taxMC; + // calculate Income after Tax, $ incomeAfterTaxes = totalIncome - taxTotal; - + // calculate effective tax rate, % effectiveTax = taxTotal / totalIncome; - + // calculate % of income locked in IRA, % incomeLocked = (contributionToIRA / totalIncome) * PERCENTAGE_CONVERSION; - + // display results displayResultsTable( taxArizona, taxFederal, incomeAfterTaxes, effectiveTax, taxTotal, incomeLocked); - + // end program / return program success return 0; } // supporting functions - // TODO - /* Name: calculateArizonaTax @@ -181,14 +178,12 @@ Dependencies: none /* Name: displayResultsTable Process: displays (prints) table for tax calculator V0.3 -Function Input/Parameters: income after tax, effective tax rate, +Function Input/Parameters: income after tax, effective tax rate, total tax to be payed, and locked income. Function Output/Parameters: none Function Output/Returned: none Device Input/Keyboard: none Device Output/Monitor: table as showed in example for PA05 Dependencies: printEndline, printString, printCharacter, printStringJustified, - printDoubleJustified + printDoubleJustified */ - -