c语言作业存款,C语言存钱问题

本文介绍了一个C语言实现的问题,通过计算找出20年内2000元存款在不同期限下的最优存钱方案,以获得最高利息。代码通过for循环穷举所有可能的存款组合,并应用利率公式计算总利息,最后输出获利最多的存款方式和本利合计。
摘要由CSDN通过智能技术生成

问题描述

假设银行整存整取存款不同期限的月息利率为:

0.63%  期限为1年

0.66%  期限为2年

0.69%  期限为3年

0.75%  期限为5年

84%    期限为8年

现在已知某人手上有2000元,要求通过计算选择出一种存钱方案,使得这笔钱存入银行20年后获得的利息最多,假定银行对超出存款期限的那部分时间不付利息。

问题分析

假设在这20年中,1年期限的存了x1次,2年期限的存了x2次,3年期限的存了x3 次,5年期限的存了x5次,8年期限的存了x8次,则到期时存款人所得的本利合计为(公式①):

23e58577e87280ca657821c34374cb8e.gif

由题意可知,显然8年期限的存款次数最多为两次,因此可得到下面对存款期限的限定条件:

cf7b530e9fc557aff48d9dfa4d423c41.gif

算法设计

根据公式①以及对存款期限的限定条件,可以使用for循环来穷举出所有可能的存款金额,从中找出最大的存款金额就是该问题的解。因为限定条件已经确定了,因此for循环的循环次数也都确定了。

下面是完整的代码:</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值