【发布时间】:2012-10-06 02:25:12
【问题描述】:
这个问题是针对 python 2.7 的。问题要求编写一个程序,计算在 12 个月内还清信用卡余额所需的最低每月固定还款额。固定每月还款额是指一个每月不变的数字,而是一个常数每月支付的金额。
在这个问题中,我们不会处理最低月付款率。
以下变量包含如下所述的值: balance - 信用卡上的未结余额 yearInterestRate - 以小数表示的年利率
该程序应打印出一行:将在 1 年内偿还所有债务的最低每月付款。
假设利息按月末余额按月复利(当月还款后)。每月付款必须是 10 美元的倍数,并且所有月份都相同。请注意,使用此付款方案,余额可能会变为负数,这没关系。所需数学的摘要如下:
月利率 = (年利率) / 12 每月更新余额 =(上一次余额 - 每月最低还款额)x(1 + 月利率)
我想出了问题的代码;但是,我反复遇到无限循环。
b = balance = 3329
air = annualInterestRate = 0.2
monthlyInterestRate = (air/12)
mmp = minimumMonthlyPayment = (balance * monthlyInterestRate)
month = 0
while month <= 12:
b = ((b - mmp) * (1 + (air/12)))
month = 1 + month
if b <= 0 and month == 12:
break
elif b > 0 and month == 12:
b = balance
month = 0
mmp = minimumMonthlyPayment + 10.00
print str('Lowest Payment: ' + str(round(mmp, 2)))
有人可以帮我修复此代码吗?对于给定的余额,最低付款是 310...我不知道如何获得这个...
【问题讨论】:
标签: python python-2.7