本文共 1047 字,大约阅读时间需要 3 分钟。
MATLAB:MATLAB R2012a
要求输入贷款总额,贷款年利率,贷款期限,还款方式(等额本息,等额本金),输出每月还款的金额(等额本金的还款金额要求从第一月到最后一月都显示),以及还款的总额,总利息。
等额本息还款模型:
每月还款:a=xr(1+r)n/((1+r)n-1) 还款总额:A=na=n xr(1+r)n/((1+r)n-1) 总利息:s=A-x等额本金还款模型:
每月还款:x=x/n+x*(1-(k-1)/n)r k=1,2,….,n 还款总额:A=x+xr*(n+1)/2 总利息:s=A-xloan1()函数代码:
function [ ] = loan1( x,r,n )a=x*r*(1+r)^n/((1+r)^n-1);fid=fopen('output.txt','w+');for k=1:n fprintf(fid,'第%d月需还的金额为:%.4f\n',k,a);endA=n*a;fprintf(fid,'应还的总额为:%.4f\n',A);fprintf(fid,'还款的利息为:%.4f\n',A-x);fclose(fid);end
loan2()函数代码:
function [] = loan2( x,r,n )fid=fopen('output.txt','w+');for k=1:n s=x/n+x*(1-(k-1)/n)*r; fprintf(fid,'第%d月需还的金额为:%.4f\n',k,s);endA=x+x*r*(n+1)/2;fprintf(fid,'应还的金额为:%.4f\n',A);fprintf(fid,'还款的利息为:%.4f\n',A-x);fclose(fid);end
opt()函数代码:
function [] = opt( flag )while(flag~=0) if flag==1 A=input('请输入贷款金额,利率,还款月数:'); loan1(A(1),A(2),A(3)) else A=input('请输入贷款金额,利率,还款月数:'); loan2(A(1),A(2),A(3)) end flag=input('请输入标志是否结束循环(0:结束 1:等额本息 2:等额本金):');endend
转载地址:http://bulwi.baihongyu.com/