等额本金:每月的还款额不同,呈现逐月递减的状态;它是将贷款本金按还款的总月数均分,再加上上期剩余本金的利息,这样就形成月还款额,所以等额本金法第一个月的还款额最多,然后逐月减少,越还越少。
/** * 等额本金还款法 * @param _loanAmount 贷款金额(元) * @param _loanYears 贷款年数 * @param _annualInterestRate 贷款年利率(%) */ private static void averageCapital(double _loanAmount, int _loanYears, double _annualInterestRate){ BigDecimal digit_0 = new BigDecimal(0); //数字0 BigDecimal digit_100 = new BigDecimal(100); //数字100 BigDecimal monthsOfYear = new BigDecimal(12); //一年的月数 int scale = 10; //精度 BigDecimal loanTotal = new BigDecimal(_loanAmount); //贷款总额,元为单位 BigDecimal loanYears = new BigDecimal(_loanYears); //贷款年数 BigDecimal annualInterestRate = new BigDecimal(_annualInterestRate).divide(digit_100); //年利率 //还款月数 int loanMonths = loanYears.multiply(monthsOfYear).intValue(); System.out.println("还款月数:" + loanMonths); //月利率 = 年利率 /12。一般以千分之表示 BigDecimal monthlyInterestRate = annualInterestRate.divide(monthsOfYear, scale, BigDecimal.ROUND_HALF_UP); System.out.println("月利率:" + toFixed(monthlyInterestRate.multiply(new BigDecimal(1000)), 3)); //每月本金=总本金/还款月数 BigDecimal monthlyPrincipal = loanTotal.divide(new BigDecimal(loanMonths), scale, BigDecimal.ROUND_HALF_UP); BigDecimal accruedPrincipal = digit_0; //累计本金 BigDecimal totalInterest = digit_0; //累计利息 System.out.println("\n期数,还款本息(元),还款利息(元),还款本金(元),剩余本金(元)"); for(int n=1; n<=loanMonths; n++){ //每月还款本息 =(本金/还款月数)+(本金-累计已还本金)×月利率 BigDecimal bx1 = loanTotal.divide(new BigDecimal(loanMonths), scale, BigDecimal.ROUND_HALF_UP); BigDecimal bx2 = loanTotal.subtract(accruedPrincipal).multiply(monthlyInterestRate); BigDecimal monthlyRepaymentAmount = bx1.add(bx2); //每月利息 = (本金-累计已还本金)×月利率 BigDecimal lx = loanTotal.subtract(accruedPrincipal).multiply(monthlyInterestRate); //总利息 totalInterest = totalInterest.add(lx); //累计已还本金 accruedPrincipal = accruedPrincipal.add(monthlyPrincipal); //剩余本金 = 本金-累计已还本金 BigDecimal remainingPrincipal = loanTotal.subtract(accruedPrincipal); System.out.println(n + "," + toFixed(monthlyRepaymentAmount, 2) + "," + toFixed(lx, 2) + "," + toFixed(monthlyPrincipal, 2) + "," + toFixed(remainingPrincipal, 2)); } System.out.println("总利息:" + toFixed(totalInterest, 2)); System.out.println("还款总金额:" + toFixed(loanTotal.add(totalInterest), 2)); }
相关推荐
本文将详细解析一个使用C# 2.0编写的按揭贷款计算器,该计算器实现了两种常见的还款方式:等额本息还款法和等额本金还款法。这两种还款方式在房地产市场中广泛应用于个人按揭贷款。 首先,我们要理解什么是按揭贷款...
贷款等额本息还款明细自动计算公式..xls
等额本息还款法的核心计算公式包括本金余额、月利率和还款期限,通过这些因素可以计算出每月应还的本息总额。 房贷计算器是一个用于帮助购房者计算按揭贷款月供的工具,它通常包含以下几个关键功能: 1. 输入贷款...
不过,从长期来看,等额本息还款法下,借款人支付的总利息往往高于等额本金还款法,因为初期的还款中利息所占比例较大。随着贷款期限的持续,本金逐渐减少,利息部分随之降低,但总体而言,这种还款方式在贷款初期,...
通过研究,文中指出,在等额本息还款方式下,两种不同方式计算出应归还的贷款本金金额和所支付的贷款利息金额两种截然相反的构成,并讨论了产生这一矛盾性结果的根源。 首先,文中介绍了等额本息还款法的概念和特点...
lgd=legend([p1 p2 p3 p4 p5 p6],{'等额本金已还本金','等额本金已缴贷款','等额本金提前还款','等额本息已还本金','等额本息已缴贷款','等额本息提前还款',},'Orientation','horizontal','location','northoutside'...
等额本金Excel计算+等额本息Excel计算, 公式清楚,可以综合对比哪个合算。 公式清楚,可以综合对比哪个合算。
还款计划计算公式,用于计算等额本息及等额本金还款计划
等额本金还款法是个人贷款常见的一种还款方式,尤其在房贷领域广泛应用。此方法的特点是每月偿还固定的本金,而利息随着剩余贷款余额的减少而逐渐递减。在Excel中,利用模板来规划等额本金还款计划可以帮助我们清晰...
等额本息还款法是一种分期偿还贷款的方法,每月偿还相同的金额,这个金额包括了部分本金和利息。这种方法的特点是每月还款额固定,使得借款人可以更好地规划个人财务。等额本息的计算公式基于贷款的本金、利率和贷款...
银行贷款常用两种计算方式:等额本息 等额本金两种
在这个案例中,我们需要用MATLAB来绘制两种常见的还款方式——等额本息还款法和等额本金还款法——下的月供变化曲线。 #### 等额本息还款法 等额本息还款法是指借款人每月按相等的额度偿还贷款本息,其中由于贷款...
利用excl计算住房贷款交款明细(等额本息还款法) 利用宏计算,有excl就能用
等额本金与等额本息是两种常见的个人贷款还款方式,尤其在房贷领域应用广泛。这两种方式各有特点,适用于不同的财务状况和个人需求。 等额本息(Equal Installment)还款法,是指在整个贷款期限内,借款人每月偿还...
- **比较分析**:通过比较等额本息和等额本金的总利息支出,找到最优还款策略。 - **提前还款**:模拟不同时间点提前还款的情况,评估其经济效益。 8. **扩展应用** - **复利计算**:考虑复利因素对贷款的影响,...
等额本息还款法(Equal Installment Method)则是指每月偿还固定金额的本金和利息之和,使得每月还款额保持不变。利息随着本金的逐渐归还而减少,但每月的还款总额固定,方便预算管理。 在Java中实现这两种算法,...
等额本息还款法(也称为固定支付法)则是每月偿还相同金额的贷款,这个金额包括本金和利息。由于利息随着本金的减少而逐渐减少,因此初期还款中的大部分是利息,后期本金比例逐渐增加。 Python作为一门功能强大的...
贷款 等额本金还款按揭公式
利用excl计算住房贷款交款明细(等额本金还款法) 利用宏计算,有excl 就能用
在个人购房按揭贷款中,购房者通常面临两种主要的还款方式:等额本息还款法和等本不等息递减还款法(等额本金还款法)。这两种方式各有特点,适用于不同的财务状况和个人需求。 首先,等额本息还款法是指借款人每月...