Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //package chapter10;
- public class Loan {
- private double annualInterestRate;
- private int numberOfYears;
- private double loanAmount;
- private java.util.Date loanDate;
- /** Default constructor */
- public Loan() {
- this(2.5, 1, 1000);
- }
- /** Construct a loan with specified annual interest rate,
- number of years and loan amount
- */
- public Loan(double annualInterestRate, int numberOfYears,
- double loanAmount) {
- this.annualInterestRate = annualInterestRate;
- this.numberOfYears = numberOfYears;
- this.loanAmount = loanAmount;
- loanDate = new java.util.Date();
- }
- /** Return annualInterestRate */
- public double getAnnualInterestRate() {
- return annualInterestRate;
- }
- /** Set a new annualInterestRate */
- public void setAnnualInterestRate(double annualInterestRate) {
- this.annualInterestRate = annualInterestRate;
- }
- /** Return numberOfYears */
- public int getNumberOfYears() {
- return numberOfYears;
- }
- /** Set a new numberOfYears */
- public void setNumberOfYears(int numberOfYears) {
- this.numberOfYears = numberOfYears;
- }
- /** Return loanAmount */
- public double getLoanAmount() {
- return loanAmount;
- }
- /** Set a newloanAmount */
- public void setLoanAmount(double loanAmount) {
- this.loanAmount = loanAmount;
- }
- /** Find monthly payment */
- public double getMonthlyPayment() {
- double monthlyInterestRate = annualInterestRate / 1200;
- double monthlyPayment = loanAmount * monthlyInterestRate / (1 -
- (Math.pow(1 / (1 + monthlyInterestRate), numberOfYears * 12)));
- return monthlyPayment;
- }
- /** kuukausi maksu K* q^n * ( (1-q)/(1-q^n), kaava vuosina) */
- // lasketaan kuukausiera, joten kkk-korko ja lyhynnyset kuukausina
- public double kuukausiEra() {
- double q = 1 + annualInterestRate / 1200;
- int n = numberOfYears * 12;
- double qn = Math.pow(q, n);
- double era = loanAmount * qn * ((1 - q) / (1 - qn));
- return era;
- }
- /** Find total payment */
- public double getTotalPayment() {
- double totalPayment = getMonthlyPayment() * numberOfYears * 12;
- return totalPayment;
- }
- /** Return loan date */
- public java.util.Date getLoanDate() {
- return loanDate;
- }
- }
Add Comment
Please, Sign In to add comment