Go4Expert (http://www.go4expert.com/)
-   Java (http://www.go4expert.com/forums/java/)
-   -   Help with Mortgage calculator program (http://www.go4expert.com/forums/help-mortgage-calculator-program-t897/)

harryt123 16Jun2006 04:25

Help with Mortgage calculator program
I designed a Java mortgage program and it is working fine but I need to add some more things to it. I want to make the program list the loan balance and the interest paid for each payment over the term of the 30 year loan.(I want it to list for every 1 yr and then every couple of years). I want this list to scroll off the screen or even do a loop to show the partial list, hesitate and then display more of the list. I want to do this program with no GUI(graphical user interface). I will post my program coding below and any help would be appreciated greatly.


public class MortgageProgram {
    public static void main (String[] args){
        double payment, principal = 200000; //*Principle amount of loan is $200,000
        double annualInterest = 0.0575; //*Interest rate is currently 5.75%
        int years = 30; //*Term of the loan is 30 years
        if (args.length == 3) {
              principal = Double.parseDouble(args[0]);
              annualInterest = Double.parseDouble(args[1]);
              years = Integer.parseInt(args[2]);
          print(principal, annualInterest, years);
            System.out.println("Usage: Calculate Mortgage Payment Amount ");
            System.out.println("\nFor example: $200,000 Mortgage loan amount, 5.75% interest for a 30 year term "); //*States that Loan Amount is $200,000, interest is 5.75% and it is 30 year term.
            System.out.println("\nThe Following is your output based on the hardcoded amount: \n"); //*Will show output in the following format
            print(principal, annualInterest, years);
            System.exit(0); //*System exits nice and quietly
    public static double calculatePayment(double principal, double annRate, int years){
        double monthlyInt = annRate / 12;
        double monthlyPayment = (principal * monthlyInt)
                    / (1 - Math.pow(1/ (1 + monthlyInt), years * 12)); //*Shows 1 monthly payment multiplied by 12 to make one complete year.
        return format(monthlyPayment, 2);
    public static double format(double amount, int mortgage) {
        double temp = amount;
        temp = temp * Math.pow(10, mortgage);
        temp = Math.round(temp);
        temp = temp/Math.pow(10, mortgage);
        return temp;
    public static void print(double pr, double annRate, int years){
        double mpayment = calculatePayment(pr, annRate, years);
        System.out.println("The principal is $" + (int)pr); //*Shows the principle amount in $ value.
        System.out.println("The annual interest rate is " + format(annRate * 100, 2) +"%");
        System.out.println("The term is " + years + " years"); //*Term is normally in years.
        System.out.println("Your monthly payment is $" + mpayment); //*Shows output of monthly payment.

rheamae05 24Jul2008 20:11

Re: Help with Mortgage calculator program
The code script is good! What site are you working with?

Mviner 30Jul2008 17:16

Re: Help with Mortgage calculator program
Do you have any website where you uploaded this to see how it works ?

All times are GMT +5.5. The time now is 03:56.