数学题:银行存款问题:整存零取

本文介绍如何用Python解决关于银行整存零取的数学问题,涉及利率计算和递归算法。
摘要由CSDN通过智能技术生成

前言

        遇到有趣的数学题,记录一下.

题目

假设银行一年整存零取的月息为0.63%。现在某人手中有一笔钱,他打算在今后的5年中的每年年底取出1000.00元,到5年底时刚好取完。请算出他存钱时应存入多少?

逻辑 

  1.  月利率和年利率之间的关系 年利率 = 月利率*12
  2. 计算公式. 年息 = (月利率*12 + 1)*存款本金

代码

def solution(n, k, interest_val):
    if n:
        print(f"年利率为{interest_val} 金额: 第{6 - k}年, 年初{n:.4f} 年末{(n * (1 + interest_val)):.4f}")
    if k >= 5:
        return n
    else:
        n = (n + 1000) / (1 + interest_val)
        return solution(n, k + 1, interest_val)
 
 
if __name__ == '__main__':
    interest_rate = 0.0063 * 12
    save_money = solution(0, 0, interest_rate)
    print(f"\n需存入金额:¥{save_money}")

年利率为0.0756 金额: 第5年, 年初929.7136 年末1000.0000
年利率为0.0756 金额: 第4年, 年初1794.0811 年末1929.7136
年利率为0.0756 金额: 第3年, 年初2597.6953 年末2794.0811
年利率为0.0756 金额: 第2年, 年初3344.8265 年末3597.6953
年利率为0.0756 金额: 第1年, 年初4039.4445 年末4344.8265

需存入金额:¥4039.444465119001

总结 

        这题的公式不算难. 先顺着逻辑整理出公式, 再逆向整理出公式.这个题目还隐藏了一个小坑,不能拿月利率当做年利率去使用.(主要还是因为1024程序员节,发一篇文章让大家看着娱乐一下)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Marst·Writer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值