Purchase Solution

# Creating a Mortgage Calculator in Java

Not what you're looking for?

Write the program in Java (with a graphical user interface) and have it calculate and display the mortgage payment amount from user input of the amount of the mortgage and the user's selection from a menu of available mortgage loans:

- 7 years at 5.35%
- 15 years at 5.5%
- 30 years at 5.75%

Use an array for the mortgage data for the different loans. Display the mortgage payment amount followed by the loan balance and interest paid for each payment over the term of the loan. Allow the user to loop back and enter a new amount and make a new selection or quit. Please insert comments in the program to document the program. Once again it needs to be able to compile from the command line.

##### Solution Summary

The following posting helps with creating a mortgage calculator in Java.

##### Solution Preview

I added a new method, createJMenuBar(), in the mcFrame class to add the main menu bar with a menu called Available Mortgages. When a user clicks on one of the available mortgages, the year JTextField and the rate JTextField will be filled with the available choices. Then the user must enter the loan amount and click Calculate button to see the result. I tested the source code on Win 7 machine and it works ok. Let me know if you have any problems.

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.DecimalFormat;
import java.util.Scanner;
import javax.swing.*;

public class mortgageCalculatorGui2 {

public static void main(String[] args) {
//------------------------
//Use GUI to calculate mortgages
mcFrame mc = new mcFrame();
mc.createWindow();
}
}

class MortgageCalculator {

private int years; //number of years on the loan
private double loan; // amount of loan
private double interest;// percentage of interest
private double monthlyPayment;// amount ofmonthly payment
private double totalPayment; // this is the loan amount plus interest
private double interestPaid;//monthly interst payment
private double balanceLoan;// loan balance
private double balancePrinciple;// principle balance
//display variables
private int displayCount;//display counter
private int scroll;//scroll counter
private Scanner input;
//display for gui
private StringBuffer strForGui; //string buffer for gui display

public MortgageCalculator(int years, double loan, double interest) {
this.years = years;
this.loan = loan;
this.interest = interest;
input = new Scanner(System.in);
//get monthly payment
//interest is in percentage, so for monthly interest, interest = (interset/100)/12=interest/1200..
monthlyPayment = loan * (interest / 1200) * (1 + 1 / (Math.pow(1 + interest / 1200, years * 12) - 1));
totalPayment = monthlyPayment * years * 12;//the total payment is the sum of loan amount and the
//total of the interest paid over the course of the loan
balanceLoan = totalPayment;
balancePrinciple = this.loan;
}
//use to display schedule on console

public void displaySchedule() {
//display schedule
while (displayCount < years * 12) {
str = (String.format("%10s %10s %10s %10s", "month", "payment", "interest", "balance"));// returns the next element in the literation, 10s means reserve 10 ...

##### Free BrainMass Quizzes

Ever wondered where a Table of Contents in a Word document comes from? Maybe you need a refresher on the topic? This quiz will remind you of the keywords and options used when working with a T.O.C. in Word 2010.

##### C++ Operators

This quiz tests a student's knowledge about C++ operators.

##### C# variables and classes

This quiz contains questions about C# classes and variables.

##### Javscript Basics

Quiz on basics of javascript programming language.

##### Basic Computer Terms

We use many basic terms like bit, pixel in our usual conversations about computers. Are we aware of what these mean? This little quiz is an attempt towards discovering that.