Seng11106110 programming - school of electrical engineering


Introduction

The objective of this assignment is the implementation of an object oriented program using Java to receive information from a potential client and calculate and display details of a possible loan from the GoodMates Loan Institution. The assignment 2 will be an extension of this assignment.

Carefully read the specification below. Make sure that you have all the information necessary to start the program. Do not assume what is necessary. There is a discussion board forum: assignment 1. Post your questions there and check it regularly. Start the assignment as soon as possible (after your computer lab this week). You will find the document "HelpToStartAssign1" and some Java files in Blackboard, which gives you some initial steps to start the assignment. I will answer questions and clarify any issue in the next week lecture (week 6).

Specification

The program will start asking for the following inputs:
- User name
- User age
- User income per year
- amount of money the user would like to borrow
- number of months the user would like to pay
- type of account (see below)

If the user inputs a negative number, the program should show a message and ask the input again. There are two types of accounts the user can choose:
1) No fees. If the user chooses this option, the interest rate will be a. 6.5% if n < 50
b. 7.5% if 50 <= n < =100
c. 8.5% if n > 100 where n is number of months

2) Fees. The interest rate will be 6%, but the user needs to pay an additional fee of $10 every month.

Next, the program will output the monthly payment, which will be calculated using the formula:

p = (d*r*an)/12* (an - 1 )    (1)

where d = amount to borrow, a = 1+r/12, r = interest rate and n = number of months

Then, the program will show the amortization table. Each row of the table will show:
- month
- initial balance
- payment
- interest paid
- principal paid
- final balance

The payment is calculated by the formula (1). The interest paid will be (initial balance)*r/12.

The principal paid will be (payment - interest paid)
The final balance will be (initial balance - payment + interest paid.)

The program will also inform
- Total payment
- Total interest paid

Program Requirements

There must be three classes: Client, Account and LoanCalculator.

- The Account class (the file needs to be Account.java)

It will hold the required instance data for an account and it will have suitable methods to access and modify the data for an account.

The instance variables will be
- interestRate - double
- numberOfMonths - int
- amount - double
- accountType - String

You need to implement at least one constructor, which will initialize the instance variables with values from parameters. The class needs to have methods to change and access all instance variables. It will also have the following methods (at least):

- setInterestRate, which will set the value in the interestRate which will depend on the type of the account (as explained above).
- calculateMontlyPayment, which will calculate the formula (1)
- setAmortizationTable - it will output a String with the table information.

- The Client Class (the file needs to be Client.java)

It will hold the required instance data for a client and it will have suitable methods to access and modify the data for a client.

The instance variables will be:
- name - String
- age - int
- income - double
- loan - Account

You need to implement at least one constructor that will have the parameters name, age and income. The class needs to have methods to change and access all instance variables.

- The LoanCalculator Class (the file needs to be LoanCalculator.java)

It will receive inputs and show outputs. It will have a Client variable. This is the only class that should have a main method. The class LoanCalculator will also be the only one that will receive inputs and show outputs.

You can use TIO or GUI (it is your choice). On both cases, you should use only the classes have seen in lectures.

Attachment:- Assignment.rar

Solution Preview :

Prepared by a verified Expert
JAVA Programming: Seng11106110 programming - school of electrical engineering
Reference No:- TGS02900410

Now Priced at $50 (50% Discount)

Recommended (98%)

Rated (4.3/5)