Vamos lá.
Explicando porque cálculo em PHP puro é lixo.
http://www.scriptcase.com.br/forum/index.php/topic,4114.msg16344.html#msg16344
http://duodra.co/2007/09/26/bcmath-php-fazendo-contas-direitinho/
Como na internet nada se cria tudo se copia!
Eu costumo usar esta aqui:
https://dourado.net/2010/11/20/calcular-tabela-price-em-php-pgto-no-excel/
// Funcao para Calcular valor da Parcela - Tabela Price
function Price($Valor, $Parcelas, $Juros) {
$Juros = bcdiv($Juros,100,15);
$E=1.0;
$cont=1.0;
for($k=1;$k<=$Parcelas;$k++)
{
$cont= bcmul($cont,bcadd($Juros,1,15),15);
$E=bcadd($E,$cont,15);
}
$E=bcsub($E,$cont,15);
$Valor = bcmul($Valor,$cont,15);
return bcdiv($Valor,$E,15);
}
// Exemplo de utilização
echo Price($Valor, $Parcelas, $Juros);
PS: O resto é somente improvisar. ok? -> http://pessoal.sercomtel.com.br/matematica/financeira/amortiza/amortiza.htm
Dados
PV = R$ 10.000,00
n = 5 meses
i = 10% ao mês
PMT = ?
Resolução algébrica
1º) Cálculo do valor da prestação do financiamento
PMT = PV [ ( 1 + i )n . i / ( 1 + i )n – 1 ]
PMT = 10.000 [ ( 1 + 0,1 )5 . 0,1 / ( 1 + 0,1 )5 – 1 ]
PMT = 10.000 [ ( 1,1 )5 . 0,1 / ( 1,1 )5 – 1 ]
PMT =10.000 [ 1,610510 . 0,1 / 1,610510 – 1 ]
PMT =10.000 [ 0,1610551 / 0,610510 ]
PMT = 10.000 [ 0,263797 ]
PMT = R$ 2.637,97
2º) Cálculo dos juros (J)
J = PV . i . n
1o período: J1 = 10.000,00 . 0,1 . 1 = R$ 1.000,00
2o período: J2 = 8.362,03 . 0,1 . 1 = R$ 836,20
3o período: J3 = 6.560,26 . 0,1 . 1 = R$ 656,03
4o período: J4 = 4.578,32 . 0,1 . 1 = R$ 457,83
5o período: J5 = 2.398,18 . 0,1 . 1 = R$ 239,82
3º) Cálculo da parcela de amortização (PAn)
PAn = PMT – J
1o período: PA = 2.637,97 – 1.000,00 = R$ 1.637,97
2o período: PA = 2.637,97 – 836,20 = R$ 1.801,77
3o período: PA = 2.637,97 – 656,03 = R$ 1.981,94
4o período: PA = 2.637,97 – 457,83 = R$ 2.180,14
5o período: PA = 2.637,97 – 239,82 = R$ 2.398,15
4º) Cálculo do saldo devedor (SD)
SDn = SD(anterior) – PAn
SD1 = 10.000,00 – 1.637,97 = R$ 8.362,03
SD2 = 8.362,03 – 1.801,77 = R$ 6.560,26
SD3 = 6.560,26 – 1.981,84 = R$ 4.578,32
SD4 = 4.578,32 – 2.180,14 = R$ 2.398,18
SD5 = 2.398,18 – 2.398,15 = R$ 0,03