论文部分内容阅读
按揭贷款作为普通人从事金融活动的主要方式之一,已经被越来越多的人接受,深入到生活的方方面面。从我们接受银行贷款的那一天起,就面临着还贷问题,怎么还,还多少一直都由银行规定,出于对银行的信任,我们很少去思考一个问题:为什么还那么多钱?其实这一问题背后隐藏着丰富的数学知识。
按揭贷款的还贷方式一般有两种:等额本金还款法和等额本息还款法。等额本金还款方式是将贷款本金平均分摊到每月内,每月的还款金额由两部分组成:固定的本金和上一还款日至本次还款日之间产生的利息。这种还贷方式由于利息是等差递减数列,所以借款人可随还贷年限的增加而逐渐减轻还贷负担。根据这种还贷方式的特点,在利率不变的情况下,我们可用如下程序计算还贷金额。
main()
{
int i , t; /*定义t为借贷期限*/
long a; /*定义a为借贷金额*/
float r, d; /*定义r为利率*/
float b = 0; /*定义b为利息总负担*/
printf("请输入借贷金额:");
scanf("%ld", &a);
printf("请输入借贷年限:");
scanf("%d", &t);
printf("请输入月利率:");
scanf("%f", &r);
d = a * r;
for(i = 1; i <= 12 * t; i++)
{
printf("第%d月还款金额为: %f", i, (float)a / (12 * t) + d);
b = b + d;
d = d - (a * r) / (12 * t);
}
printf("利息总负担为; %f", b);
}
相比较而言,等额本息这种还贷方式的原理要复杂一些,其主要特点是每月还款金额都是固定的,每月的还款金额也由两部分组成:动态变化的本金和上一还款日至本次还款日之间产生的利息。下面我们先用方程方法分析这一问题。
假设借贷总额是a元,借贷期限为t年,月利率为r,再设第一个月还的本金为x,每月的还款总额为y。第一个月我们向银行还了y元,其中包括本金x元和这一月产生的利息ar元,这样就得到了第一个关系式:y=x+ar.
到第二个月,我们又向银行还了y元,这一月产生的利息为(a-x)r,那么本金是多少呢?不妨设第二月还的本金为z,则得到第二个关系式:y=(a-x)r+z。
把两个关系式右端连起来解得z=x(1+r),同样的方法可知第三个月所还的本金为x(1+r)2。这样推导下去会发现,每月所还的本金是一个以x为首项,(1+r)为公比的12t项等比数列!根据等比数列求和公式得到如下方程:
解得:
将结果代入第一个关系式得到每个月还款金额为?
接下来c语言程序主要解决的计算问题。
main()
{
int i , t; /*定义t为借贷期限*/
long a; /*定义a为借贷金额*/
float r, d = 1; /*定义r为利率*/
printf("请输入借贷金额:");
scanf("%ld", &a);
printf("请输入借贷年限:");
scanf("%d", &t);
printf("请输入月利率:");
scanf("%f", &r);
for(i = 1; i <= 12 * t; i++)
{
d = d * (1 + r);
}
printf("每月还款金额为 %f", -r * a / (1 - d) + a * r);
printf("利息总负担为; %f", (-r * a / (1 - d) + a * r) * 12 * t - a);
}
两种还款方式比较而言,一般情况下等额本金方式的利息总负担要低一些,但还款方式的选择我们说了不算,现在大多数人以等额本息的方式还按揭,这是对银行有利的,没办法,我们只能默默地看着银行拿走我们的未来。
按揭贷款的还贷方式一般有两种:等额本金还款法和等额本息还款法。等额本金还款方式是将贷款本金平均分摊到每月内,每月的还款金额由两部分组成:固定的本金和上一还款日至本次还款日之间产生的利息。这种还贷方式由于利息是等差递减数列,所以借款人可随还贷年限的增加而逐渐减轻还贷负担。根据这种还贷方式的特点,在利率不变的情况下,我们可用如下程序计算还贷金额。
main()
{
int i , t; /*定义t为借贷期限*/
long a; /*定义a为借贷金额*/
float r, d; /*定义r为利率*/
float b = 0; /*定义b为利息总负担*/
printf("请输入借贷金额:");
scanf("%ld", &a);
printf("请输入借贷年限:");
scanf("%d", &t);
printf("请输入月利率:");
scanf("%f", &r);
d = a * r;
for(i = 1; i <= 12 * t; i++)
{
printf("第%d月还款金额为: %f", i, (float)a / (12 * t) + d);
b = b + d;
d = d - (a * r) / (12 * t);
}
printf("利息总负担为; %f", b);
}
相比较而言,等额本息这种还贷方式的原理要复杂一些,其主要特点是每月还款金额都是固定的,每月的还款金额也由两部分组成:动态变化的本金和上一还款日至本次还款日之间产生的利息。下面我们先用方程方法分析这一问题。
假设借贷总额是a元,借贷期限为t年,月利率为r,再设第一个月还的本金为x,每月的还款总额为y。第一个月我们向银行还了y元,其中包括本金x元和这一月产生的利息ar元,这样就得到了第一个关系式:y=x+ar.
到第二个月,我们又向银行还了y元,这一月产生的利息为(a-x)r,那么本金是多少呢?不妨设第二月还的本金为z,则得到第二个关系式:y=(a-x)r+z。
把两个关系式右端连起来解得z=x(1+r),同样的方法可知第三个月所还的本金为x(1+r)2。这样推导下去会发现,每月所还的本金是一个以x为首项,(1+r)为公比的12t项等比数列!根据等比数列求和公式得到如下方程:
解得:
将结果代入第一个关系式得到每个月还款金额为?
接下来c语言程序主要解决的计算问题。
main()
{
int i , t; /*定义t为借贷期限*/
long a; /*定义a为借贷金额*/
float r, d = 1; /*定义r为利率*/
printf("请输入借贷金额:");
scanf("%ld", &a);
printf("请输入借贷年限:");
scanf("%d", &t);
printf("请输入月利率:");
scanf("%f", &r);
for(i = 1; i <= 12 * t; i++)
{
d = d * (1 + r);
}
printf("每月还款金额为 %f", -r * a / (1 - d) + a * r);
printf("利息总负担为; %f", (-r * a / (1 - d) + a * r) * 12 * t - a);
}
两种还款方式比较而言,一般情况下等额本金方式的利息总负担要低一些,但还款方式的选择我们说了不算,现在大多数人以等额本息的方式还按揭,这是对银行有利的,没办法,我们只能默默地看着银行拿走我们的未来。