Um cronograma de amortização do empréstimo é uma tabela descrevendo como cada pagamento em um empréstimo de amortização é aplicado para principal e juros. Um cronograma de amortização pode ser criado por uma calculadora de amortização , geralmente um aplicativo de software ou planilha projetada para o efeito. Escrevendo uma calculadora de amortização em Java permite que você fornecer essa funcionalidade útil no seu applet Java , aplicação ou serviço web. Cronograma de Amortização
Amortizantes empréstimos (como a hipoteca da casa ) são pagos ao longo do prazo do empréstimo com pagamentos regulares. A partir de cada pagamento , os juros acumulados para o período é pago , com o restante aplicado ao principal. Um cronograma de amortização do empréstimo mostra como a aplicação de cada pagamento individual é dividido entre capital e juros.
A fórmula para calcular o valor do pagamento do empréstimo é baseada na capital, os juros periódica, bem como o número total de pagamentos programados ( consulte o "Guia do Google: Google Calculator" link na seção de Recursos para obter uma referência operador matemático ) :
Pagamento = (principal * juros) /(1 - (1 + juros) ^ - número de pagamentos )
o quadro de amortização é gerado pelo cálculo do montante pago para juros do período (saldo interesse *) eo valor pago para o principal (pagamento - . montante de juros )
< br > Java Amortization Calculator
Crie uma classe chamada AmortizationSchedule com variáveis de membro para armazenar o valor do empréstimo inicial, o número de pagamentos , a taxa de juros periódica , equilíbrio e pagamento.
privado duplo juros; diretor duplo privado ; numPayments int privadas; equilíbrio duplo privado , o pagamento duplo privado ;
Escrever um construtor que aceita e define o principal, taxa de juros periódica e número de pagamentos. O balanço eo pagamento será calculado depois
AmortizationSchedule público (double i , double p , int n). {Juros = i; diretor = p; numPayments = n ;}
Adicionar um membro . função para calcular e emitir o cronograma
printAmoritizationSchedule public void () {
Declare variáveis para armazenar cálculos
dupla curInterest = 0, curPrincipal = 0; . totalPayments duplas = 0, totalPrincipal = 0, totalInterest = 0; .
Calcule o pagamento , defina o saldo atual para o valor dos cabeçalhos das colunas de empréstimo e de impressão para uma tabela delimitada por vírgula
pagamento = ( diretor * juros) /(1 - Math.pow ( (1 + juros) ,- numPayments ) ); equilíbrio = principal; dupla curInterest = 0; System.out.println (" Período , Pagamento, principal, juros , Balance" ) ;
loop através de cada período de pagamento
para . (int período = 1; período < = numPayments ; período + +) {
Calcular a parcela de juros do pagamento atual.
curInterest = saldo * juros;
Para o pagamento final , ajuste de arredondamento , definindo o pagamento para a parcela de juros atual mais o saldo devedor
if ( = período . = numPayments ) { pagamento = saldo + curInterest ;}
Calcular o pagamento de capital atual eo saldo atual. Imprima os resultados
curPrincipal = pagamento - curInterest ; . Equilíbrio - = curPrincipal ; System.out.println ( período + "," + pagamento + "," + curPrincipal + "," + curInterest + " , "+ saldo) ;
Adicione os valores de agendamento atuais para os totais em execução e terminar o loop
totalPayments + = pagamento; . totalPrincipal + = curPrincipal ; totalInterest + = curInterest ;}
.
Finalmente, imprimir os totais de cada coluna e sair do método
System.out.println (" totais, " + totalPayments + "," + totalPrincipal + "," + totalInterest );}
em seu aplicativo, instanciar AmortizationSchedule com os valores necessários e chamar printAmoritizationSchedule ().
Dicas e Tweaks
Use BigDecimal no lugar de duplica para cálculos financeiros para maior precisão e formatação de número de controle . Formato de saída para limitar a exibição de duas casas decimais.
Os empréstimos são normalmente expressos em termos de juros , os pagamentos mensais eo número de pagamentos . Colete as informações da forma que faz mais sentido para seus usuários , e fazer os cálculos necessários antes de calcular a programação.
Como uma alternativa para imprimir o cronograma de amortização , você pode armazenar os resultados em um bidimensional matriz para retornar à função de chamada.