700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > python计算等额本金_等额本金-逆推 - tedzheng的个人空间 - OSCHINA - 中文开源技术交流社区...

python计算等额本金_等额本金-逆推 - tedzheng的个人空间 - OSCHINA - 中文开源技术交流社区...

时间:2023-10-29 01:09:13

相关推荐

python计算等额本金_等额本金-逆推  - tedzheng的个人空间 - OSCHINA - 中文开源技术交流社区...

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

父亲准备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)

ifterm=48then

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

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。