/** * Title: Chapter 2, "Primitive Data Types and Operations" * Description: Examples for Chapter 2 * Copyright: Copyright (c) 2000 * Company: Armstrong Atlantic State University * @author Y. Daniel Liang * @version 1.0 */ // ComputeMortgage.java: Compute mortgage payments public class ComputeMortgage { /**Main method*/ public static void main(String[] args) { double annualInterestRate; int numOfYears; double loanAmount; // Enter yearly interest rate System.out.print( "Enter yearly interest rate, for example 8.25: "); annualInterestRate = MyInput.readDouble(); // Obtain monthly interest rate double monthlyInterestRate = annualInterestRate/1200; // Enter number of years System.out.print( "Enter number of years as an integer, for example 5: "); numOfYears = MyInput.readInt(); // Enter loan amount System.out.print("Enter loan amount, for example 120000.95: "); loanAmount = MyInput.readDouble(); // Calculate payment double monthlyPayment = loanAmount*monthlyInterestRate/ (1 - 1/(Math.pow(1 + monthlyInterestRate, numOfYears*12))); double totalPayment = monthlyPayment*numOfYears*12; // Display results System.out.println("The monthly payment is " + monthlyPayment); System.out.println("The total payment is " + totalPayment); } } //----------- // a class for reading various types from the keyboard (System.in) class MyInput { public static String readString() { String string = ""; java.io.BufferedReader bufferedReader = new java.io.BufferedReader(new java.io.InputStreamReader(System.in)); try { string = bufferedReader.readLine(); } catch (java.io.IOException ex) { throw new RuntimeException(ex); } return string; } public static int readInt() { return Integer.parseInt(readString()); } public static double readDouble() { return Double.parseDouble(readString()); } // test all the methods of this class public static void main(String[] args) { System.out.println("Testing 'readString()'"); System.out.print("Input your string : "); System.out.println("Your string was '" + readString() + "'"); System.out.println("\nTesting 'readInt()'"); System.out.print("Input your int : "); System.out.println("Your int was '" + readInt() + "'"); System.out.println("\nTesting 'readDouble()'"); System.out.print("Input your double : "); System.out.println("Your double was '" + readDouble() + "'"); } }