等额本金-逆推

等额本金是递归逆推的一个方法:

父亲准备4年的生活费,使且整存零取的方式,控制每月底只能提取1000,假设银行年利息为1.71%

思路:

48个月取出1000,则要先求出47个月时银行存款的具体金额:

47个月的存款=1000/(1+1.71%/12)

47个月的存款=(47个月的存款+1000)/(1+1.71%/12)

........

1个月的存款=(2个月的存款+1000)/(1+1.71%/12)

pseudocode:

corpus(0)
if 
term=48 then

corpus(48)=1000

elseifcorpus(n)=(corpus(n+1)+1000)/(1+%)

endif

'//程序用以计算等额本息方式
Public Out()
Public EA#, Term#, Rate#
Sub Corpus()
Dim FirstCorpus#
'每期金额,利率,期数
Dim i&
'变量
With Sheet3
EA = .Cells(1, 2): Rate = .Cells(2, 2): Term = .Cells(3, 2)
ReDim Out(0 To Term, 1 To 2)
FirstCorpus = CorpusMain(0)     '求0值
'Output
.Cells(4, 2) = FirstCorpus  'answer
.Cells(7, 1).Resize(UBound(Out) + 1, UBound(Out, 2)) = Out  'process
End With
End Sub
'//递归逆推主程序
Function CorpusMain(n)
  If n = Term Then
      CorpusMain = EA
  Else
      CorpusMain = (CorpusMain(n + 1) + EA) / (1 + Rate / 12)
  End If
      Out(n, 1) = n: Out(n, 2) = CorpusMain
End Function


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值