找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 2659|回复: 4

[求助] 目标:在浮动利率下,计算复利投资回报。出错了!

2

主题

7

帖子

7

积分

贫民

积分
7
食货志 发表于 2018-5-26 15:52:09 | 显示全部楼层 |阅读模式
amount = float(input("principal amount:"))
for time in range(1,11):
    import random
    interest = random.randrange(5,10) #浮动利率
    i = abs(float(interest / 100))
    j = 1 * (1 + i) ** time
    def invest():
    payback = float(amount *j)
    return (payback)
    print("Year",time,":$",invest())
input()
#疑问点:在利息下降的年份里,为何当年总金额会小于上年?如果代码有错,请指教。跑出来的结果:principal amount:100
Year 1 :$ 105.0
Year 2 :$ 116.64000000000001
Year 3 :$ 129.5029
Year 4 :$ 136.04889600000004
Year 5 :$ 153.86239549000004
Year 6 :$ 158.68743229440005
Year 7 :$ 182.8039120816691
Year 8 :$ 147.7455443789063
Year 9 :$ 183.84592124201555
Year 10 :$ 236.73636745921192


回复

使用道具 举报

1419

主题

1891

帖子

291

积分

侠客

积分
291

最佳新人热心会员默默耕耘

whydo1 发表于 2018-5-26 22:38:15 | 显示全部楼层
amount = float(input("principal amount:"))
for time in range(1,11):
    import random
    interest = random.randrange(5,10) #浮动利率
    i = abs(float(interest / 100))
    j = 1 + i
    def invest():
        payback = float(amount *j)
        return (payback)
    amount = invest()
    print("Year",time,":$",amount)
input()
python3.4.4, win10
回复 支持 反对

使用道具 举报

0

主题

956

帖子

956

积分

圣骑士

积分
956
sheeboard 发表于 2018-5-27 14:10:37 | 显示全部楼层
不知道对不对

Screenshot from 2018-05-27 14-09-05.png
回复 支持 反对

使用道具 举报

2

主题

7

帖子

7

积分

贫民

积分
7
食货志  楼主| 发表于 2018-5-28 09:25:21 | 显示全部楼层

如何解释我的代码跑出来数据会变小这一问题?
回复 支持 反对

使用道具 举报

0

主题

956

帖子

956

积分

圣骑士

积分
956
sheeboard 发表于 2018-5-28 10:16:23 | 显示全部楼层
本帖最后由 sheeboard 于 2018-5-28 10:37 编辑

我估计是公式搞错了,你用的公式是固定利率的公式,既然每年的利率不同,用固定利率计算当然不同了。

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表