相关代码:
#输入数据
B <- 1000000
R <- 0.06/12 # 月利率
t <- 15*12
N <- 1:t
#等额本金
MBA <- B/t
MYA <- B - MBA*(N-1)
MIA <- MYA*R
MPA <- MIA + MBA
# 等额本息
MPB <- B*R*(1+R)^t / ((1+R)^t-1) # 每月应还的等额本息,包含月还利息和月还本金
MYBF <- function(n) # 如何将利息与本金分离出来
{
# 可知,MYB(n)为第n个月后剩余的欠银行的钱,即第n个月的剩余本金(n=1,2,3..)
# 那么MYB(N),N=0,1,2,...,且MYB(N)*r就是第N+1个月的利息
MYB <- B*(1+R)^n - MPB*((1+R)^n-1)/R
return(MYB)
}
MYB <- MYBF(N-1) # 让时间从0,1,2,3...到n-1结束
MIB <- MYB * R # 月还利息
MBB <- MPB - MIB # 月还本金
#开始画图展示
par(mfcol=c(2,2), oma = c(0, 0, 3, 0))
plot(MIA,col='red',pch=19)
points(MIB,col='blue',pch=19)
title('月还利息对比')
plot(rep(MBA,t),col='red',pch=19)
points(MBB,col='blue',pch=19)
title('月还本金对比')
plot(MPA,col='red',pch=19)
points(rep(MPB,t),col=