--%>

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 : Guidelines for effective communication

    Define and explain the four guidelines for effective communication in families. Give examples to describe each guideline.

  • Q : Financial institutions & Economic growth

      It started with the US sub-prime mortgages on housing loans, which became worthless when home owners defaulted on their loans. The housing market promptly collapsed, wiping out Wall Street's revered investment banks and pull

  • Q : Imports and exports of U.S Give some

    Give some remark over the given statement: “As imports of the U.S. is more than its exports, it is essential for U.S. to import the capital from foreign countries in order to finance its current account deficits.”

  • Q : Cost accountant With Black

    Black Manufacturing Company Black Manufacturing produced a single product called the Great Beast. During the past three weeks, Lee High, the new cost accountant, had observed that production efficiency and input pr

  • Q : Meaning of Bill and Hold What is the

    What is the meaning of Bill and Hold in Accounting? Briefly describe it.

  • Q : Define the term Assets Define the term

    Define the term Assets in Accounting?

  • 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 : Costs of hedging through forward

    Discuss and compare the costs of hedging through the forward contract and the options contract.

  • Q : Claim depreciation When an asset is

    When an asset is purchased and the similar is not employed for the financial year, must the company charge the depreciation and the reason for the similar?

  • Q : Closing entry for financial accounting

    A journal entry that moves the effects of revenues or expenses to the owners' equity account. Only temporary account that is on the income statement is closed. The purpose of a closing entry is twofold. First, it moves revenue to retained earnings on the balance sheet