Et lån amortiseringsplan er en tabell som beskriver hvordan hver betaling på en amortizing lån , settes opp mot hovedstol og renter . En amortiseringsplan kan være skapt av en amortisering kalkulator, vanligvis et program eller regneark laget for formålet. Skrive en amortisering kalkulator i Java kan du gi dette nyttig funksjonalitet i Java- applet , program eller web service. Amortisasjonsplan
amortizing lån ( for eksempel et boliglån ) er nedbetalt over lånets løpetid med regelmessige betalinger . Fra hver betaling , er renter for perioden betalt , mens resten brukes til rektor . Et lån amortiseringsplan viser hvordan anvendelsen av hver enkelt betaling er delt mellom hovedstol og renter .
Formelen for å beregne lån betaling beløpet er basert på prinsippet , det periodiske interesse, og det totale antall betalinger planlagte ( se "Google guide: Google Calculator " link i Resources for en matematisk operator referanse) : en
Betaling = ( hovedstol * renter) /( 1 - ( 1 + rente) ^ - antall betalinger )
amortisering tabellen er generert ved å beregne beløpet som betales mot renter for perioden (renter * balanse) og beløpet betalt mot rektor ( betaling - . rentebeløpet )
Java Amortisering Kalkulator
Lag en klasse som heter AmortizationSchedule med medlem variabler til å lagre den opprinnelige lånebeløpet , antall betalinger , periodisk rente , balanse og betaling.
privat dobbel interesse ; private double rektor ; private int numPayments ; private double balanse ; privat dobbel betaling ;
Skriv en konstruktør som aksepterer og setter rektor, periodisk rente og antall betalinger. Balansen og betaling vil bli beregnet senere
offentlig AmortizationSchedule (dobbel jeg , dobbelt p , int n). { Interesse = i; principal = p; numPayments = n; }
Legg medlem . funksjonen til å beregne og sende ut planen
public void printAmoritizationSchedule ( ) {
Erklærer variabler til å lagre beregninger
dobbel curInterest = 0 , curPrincipal = 0; . doble totalPayments = 0 , totalPrincipal = 0 , totalInterest = 0;
Beregn betaling, angi gjeldende balanse til beløpet av lånet og skrive ut kolonneoverskriftene for en kommaseparert tabellen
betaling = ( . hovedstol * renter) /( 1 - Math.pow ( ( 1 + rente) , - numPayments )); balanse = rektor , dobbelt curInterest = 0; System.out.println ( " Period , Betaling, Principal, renter , Balance" ) ;
Loop gjennom hver utbetalingsperiode
for ( int perioden = 1; periode < = numPayments ; periode + + ) . {
Beregn rentedelen av gjeldende betaling.
curInterest = balanse * interesse ; .
for den endelige betalingen , justere for avrunding ved å sette betaling til gjeldende rentedelen pluss utestående saldo
if ( perioden = = numPayments ) { betaling = balanse + curInterest ;}
Beregn nåværende rektor betaling og den nåværende balanse. Skrive ut resultatene
curPrincipal = betaling - curInterest ; . Balanse - = curPrincipal ; System.out.println (periode + " , " + betaling + " , " + curPrincipal + " , " + curInterest + " , "+ balanse) ; .
Legg dagens tidsplan verdier til de løpende summer og avslutte løkken
totalPayments + = betaling ; totalPrincipal + = curPrincipal ; totalInterest + = curInterest ; }
slutt skriver summene for hver kolonne og avslutte metoden
System.out.println (" Totals , " + totalPayments + " , " + totalPrincipal + " , " + totalInterest ) .;}
i søknaden , instantiate AmortizationSchedule med de nødvendige verdier og samtale printAmoritizationSchedule ( ) .
Tips og tweaks
bruk BigDecimal i stedet for dobler for økonomiske beregninger for økt nøyaktighet og tallformatering kontroll. Format utgang for å begrense visningen til to desimaler .
Lån er vanligvis angitt i form av årlig rente , månedlige utbetalinger og antall betalinger. Samle inn informasjonen på den måten det er mest fornuftig for brukerne , og gjøre de nødvendige beregninger før beregning av planen.
P Som et alternativ til å skrive ut amortiseringsplan , kan du lagre resultatene i en todimensjonal array å gå tilbake til å kalle funksjonen .