--%>

Income Tax and Investment Calculator


Introduction

Your task is to produce a Java program, which can calculate income tax and investment growth based on the yearly income/salary of an individual. Below the details are described (The rules in this assignment are different from Australia Taxation Office).

Problem description

In Australia, a taxpayer's income is taxed progressively. Progressive taxation means that higher income earners pay more tax than lower income earners. The following tables detail the tax brackets of our progressive tax system for the financial years ending 30 June 2010 and 30 June 2011. Note that the first table is for Australian residents and the next one is for non residents.

Tax rates 2010-11 - residents

Taxable income

Tax on this income

$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

Over $180,001

$54,550 plus 45c for each $1 over $180,000

 Tax rates 2010-11 - non residents

Taxable income

Tax on this income

$0 - $37,000

29c for each $1

$37,001 - $80,000

$10,730 plus 30c for each $1 over $37,000

$80,001 - $180,000

$23,630 plus 37c for each $1 over $80,000

Over $180,001

$60,630 plus 45c for each $1 over $180,000

Residents are also required to pay 1.5% of Medicare levy if your taxable income is greater than $20,000, which is calculated at 1.5% of your taxable income. Non-residents are not required to pay the Medicare levy.

The first task of the program is to calculate the appropriate income tax for an individual based on a set of inputs by the user and the information provided in the Tax tables above. The user should provide the program with

1 Name (the name needs to have at least two names - first name and last name; if not, the program will show an error message and ask the user the name again),

2 Annual income/Salary (income) for an entire year (the salary needs to be a positive number and different from zero; if not, the program will show an error message and ask the salary again)

3 Residence - if the user is a resident or not.

The program is then expected to display:

1.    1 the net salary of this particular individual per year and per week, rounded to two decimal places (where appropriate).

2.    The correct amount of tax the individual should pay per year and per week (as defined by the Tax rates above), rounded to two decimal places (where appropriate).

3.    If the individual pays the Medicare Levy and if so, how much per year rounded to two decimal places (where appropriate).

The second task of the program is to calculate/display a possible investment. First, the program should ask

The amount of money that he/she requires (on an average) per week as living expenditure. You are to assume this expenditure value does not change for the individual over time. (the amount needs to be a positive number and different from zero; if not, the program will show an error message and ask the salary again)

On the basis of this information the program should advise the user whether or not the amount he/she is earning each week is sufficient to cover his/her weekly expenses. If the user earns less than the amount that is required to live, you should show a warning message and ask if the user would like to enter a new amount or terminate the program.

If an amount is sufficient to cover his/her weekly expenses, the program should ask if the user would like to invest some money. If yes, the program should ask

1.    Investment value - the amount of money that he/she would like to invest per week (it is necessary to verify if this amount is feasible. If not, show an error message and ask again)

2.    Interest rate - the interest rate of the investment account per annum (the interest rate needs to be between 1% and 100%; otherwise the program will show an error message and ask the user for the interest rate again)

3.    Investment length - number of weeks that the user will invest the money (it needs to be a positive number and different from zero; otherwise the program will show an error message and ask the number of weeks again)

The program is then expected to display:

A table with details of the investment at four week intervals for the length of the investment. For the purposes of this assignment you will assume that interest is only applied at the end of a complete four week period, see the example below.

Suppose that the interest is applied in the end of each 4 weeks. See the example below.

Example

Suppose a resident with yearly income of $40,000.00. The Medicare Levy will be $600.00 and the taxes will be $5,550.00/year or $106.73/week. His/her net salary per year will be $33,850.00 or $650.96 per week. Suppose the user needs $628.71 per week as living expenditure. So it is possible to invest $22.25 per week. Suppose the interest is 13% per year (or 1% each 4 weeks, since we have 52 weeks per year) and the number of weeks the user will invest the money is 18. Assuming the user asks to invest $22.25 per week, then the investment account output will be:

Weeks

Money in the end of each 4 weeks

4

$89.89 = 22.25*4*1.01

8

$180.68 = (89.89+22.25*4)*1.01

12

$272.38 = (180.68+22.25*4)*1.01

16

$364.99 = (272.38+22.25*4)*1.01

18

$409.49 = (364.99 + 22.25*2) (note that is less than 4 weeks, so the interest is not applied

 

Example Output (simplified)

Name: John Smith

Net Salary

Per Week: $650.96

Per Year: $33850.00

Tax Paid

Per Week: $106.73

Per Year: $5550.00

Medicare Levy Per Year: $600.00

 

Would you like to invest? Yes

The amount per week: 22.25

Interest rate (between 1-100): 13

Investment length (# of weeks): 18

Investment

Weeks        Balance --------------------

 4             $89.89

 8             $180.68

 12            $272.38

 16            $364.99

 18            $409.49

Program Requirements

Your program should consist of only one class (Invest.java) and only one method (the main method). You will use a Terminal I/O interface and your program needs to display all information such that it is easy to read. You cannot use arrays. Your code also must be very well commented and have a heading as:

/*Author: your name

*Student No: 3XXXXXX

*Date: 02-03-2011

*Description:

*/

What to submit.

You should submit the Java program (Invest.java) and the assignment cover sheet electronically under Assignment 1 link in Blackboard. Note: although you can save multiple versions of your program, you can only 'submit' your assignment once. The lab demonstrators will show you how to do this.

VERY IMPORTANT TO DO THIS

You need to provide the pseudocode of the program. The pseudocode can not have any element of your interface implementation. You should specify the input and output in your pseudocode.

 

   Related Questions in Financial Accounting

  • Q : Legal Reasoning and Writing This

      This exercise does not require you to do any research, and does not require you to cite to any references or external materials.  Do not include any constitutional arguments. Like many legal and policy questions

  • Q : Investment in Value trust What is your

    What is your recommendation concerning investment with/in the Value Trust? a.  Why do you recommend? b.  Why don’t you recommend?

  • Q : Interest rate Give me answer of this

    Give me answer of this question. The prime interest rate usually: A) rises when the Federal funds rate rises. B) rises when the discount rate falls. C) falls when the Federal funds rate rises. D) falls when the Fed sells bonds in the open market

  • Q : Modigliani-Miller equation In

    In Modigliani-Miller equation, why is market value of the levered firm is more than the market value of an equivalent unlevered firm?

  • Q : Policy issued by upper management What

    What would you do when upper management issues a new policy and it was problematic to you? Would you pursue the new policy?

  • Q : What is Gresham’s Law What do you mean

    What do you mean by the Gresham’s Law?

  • Q : Country and political risk What is

    What is country risk and how it is different from the political risk?

  • Q : Accouning Required parts are clearly

    Required parts are clearly describes at the end of the questions and additional resource contains the journal article related to question three.. Approx 2000 word assignment.. First Question is of not more than 1000 words to make memorandum and its example is given at end of assignment and require

  • Q : Applications of Matlab in Embedded

    Do you face difficulty with embedded system problems using matlab? Do you require help in embedded system assignment and project? We have team of tutors who are highly qualified and practiced in embedded system using matlab. They have vast industrial knowledge of matlab. W

  • Q : Advantage of Historical Cost in

    What is the advantage of Historical Cost in Decision Making?