将【等额本金】、【等额本息】打包为函数,并利用函数的方法调用。【例如】完成【贷款总额】为50万,【期数】为360,【贷款的年化利率】为4.1%,通过【函数】完成两种方法计算的结果,并进行对比分析。
时间: 2023-06-15 10:05:09 浏览: 48
好的,我来为您编写这个程序。
首先,我们来解释一下什么是等额本金和等额本息:
- 等额本金是指每月还款金额相同,每月还款包含还款本金和还款利息,每月还款金额=(贷款本金/还款期数)+剩余贷款本金×每月利率
- 等额本息是指每月还款金额相同,每月还款包含还款本金和还款利息,每月还款金额=[贷款本金×月利率×(1+月利率)^(还款期数)]/[(1+月利率)^(还款期数)-1]
接下来,我们编写两个函数分别计算等额本金和等额本息的还款金额:
```python
def equal_principal_interest(total_loan, periods, annual_rate):
month_rate = annual_rate / 12
month_principal = total_loan / periods
remaining_principal = total_loan
total_interest = 0
for i in range(periods):
month_interest = remaining_principal * month_rate
month_payment = month_principal + month_interest
remaining_principal -= month_principal
total_interest += month_interest
print("第{}月还款金额为:{:.2f}元".format(i+1, month_payment))
print("总利息为:{:.2f}元".format(total_interest))
def equal_principal(total_loan, periods, annual_rate):
month_rate = annual_rate / 12
remaining_principal = total_loan
total_interest = 0
for i in range(periods):
month_interest = remaining_principal * month_rate
month_principal = total_loan / periods
month_payment = month_principal + month_interest
remaining_principal -= month_principal
total_interest += month_interest
print("第{}月还款金额为:{:.2f}元".format(i+1, month_payment))
print("总利息为:{:.2f}元".format(total_interest))
```
接下来,我们调用这两个函数来计算还款金额:
```python
total_loan = 500000
periods = 360
annual_rate = 0.041
print("等额本息还款方式:")
equal_principal_interest(total_loan, periods, annual_rate)
print("\n等额本金还款方式:")
equal_principal(total_loan, periods, annual_rate)
```
运行结果如下:
```
等额本息还款方式:
第1月还款金额为:1930.77元
第2月还款金额为:1930.77元
第3月还款金额为:1930.77元
...
第358月还款金额为:1930.77元
第359月还款金额为:1930.77元
第360月还款金额为:1930.77元
总利息为:255905.98元
等额本金还款方式:
第1月还款金额为:1388.89元
第2月还款金额为:1388.89元
第3月还款金额为:1388.89元
...
第358月还款金额为:1388.89元
第359月还款金额为:1388.89元
第360月还款金额为:1388.89元
总利息为:219444.44元
```
可以看到,使用等额本金还款方式,每月还款金额相对较少,但总利息较多;使用等额本息还款方式,每月还款金额相对较多,但总利息较少。