银行等额本息还款算法
为什么80%的码农都做不了架构师?>>>
等额本息还款,也称定期付息,即借款人每月按相等的金额偿还贷款本息,其中每月贷款利息按月初剩余贷款本金计算并逐月结清。把按揭贷款的本金总额与利息总额相加,然后平均分摊到还款期限的每个月中。作为还款人,每个月还给银行固定金额,但每月还款额中的本金比重逐月递增、利息比重逐月递减。
每月还款额计算公式如下:
每月还款额=[贷款本金×月利率×(1+月利率)^还款月数]÷[(1+月利率)^还款月数-1]
java代码如下:
import java.math.BigDecimal;/*** 等额本息还款算法* Created by FuYung on 2015/8/3.*/
public class PrincipalAndInterestEquals {/*** @param args*/public static void main(String[] args) {BigDecimal invest = new BigDecimal(139000); // 本金double yearRate = 0.059; // 年利率int year = 15;//期限double monthRate = yearRate / 12;int month = year * 12;// 每月本息金额 = (本金×月利率×(1+月利率)^还款月数)÷ ((1+月利率)^还款月数-1)BigDecimal monthIncome = invest.multiply(new BigDecimal(monthRate * Math.pow(1 +monthRate, month))).divide(new BigDecimal(Math.pow(1 + monthRate, month) - 1), 2,BigDecimal.ROUND_HALF_UP);System.out.println("每月本息金额 : " + monthIncome);System.out.println("---------------------------------------------------");// 每月本金 = 本金×月利率×(1+月利率)^(还款月序号-1)÷((1+月利率)^还款月数-1)BigDecimal monthCapital;BigDecimal sumCapital = BigDecimal.ZERO;for (int i = 1; i < month + 1; i++) {monthCapital = invest.multiply(new BigDecimal(monthRate * (Math.pow((1 + monthRate),i - 1)))).divide(new BigDecimal(Math.pow(1 + monthRate, month) - 1), 2,BigDecimal.ROUND_HALF_UP);System.out.println("第" + i + "月本金: " + monthCapital);sumCapital = sumCapital.add(monthCapital);}System.out.println("---------------------------------------------------");// 每月利息 = 剩余本金 x 贷款月利率BigDecimal monthInterest;BigDecimal capital = invest;BigDecimal tmpCapital = BigDecimal.ZERO;BigDecimal sumInterest = BigDecimal.ZERO;for (int i = 1; i < month + 1; i++) {capital = capital.subtract(tmpCapital);monthInterest = capital.multiply(new BigDecimal(monthRate)).setScale(2, BigDecimal.ROUND_HALF_UP);tmpCapital = invest.multiply(new BigDecimal(monthRate * (Math.pow((1 + monthRate), i- 1)))).divide(new BigDecimal(Math.pow(1 + monthRate, month) - 1), 2,BigDecimal.ROUND_HALF_UP);System.out.println("第" + i + "月利息: " + monthInterest);sumInterest = sumInterest.add(monthInterest);}System.out.println("本金总和:" + sumCapital + " 利息总和:" + sumInterest);}
}
转载于:https://my.oschina.net/fuyung/blog/487466
银行等额本息还款算法相关推荐
- 等额本息还款和等额本金还款计算公式的推导
VBA代码实现:http://blog.csdn.net/xiaotao_liu/archive/2008/02/27/2124452.aspx 众所周知,银行住房贷款的分期付款方式分为等额本息付款和 ...
- 用c语言实现银行贷款程序(等额本息还款法、等额本金还款法)
王先生从银行贷了350,000元用于买房,贷款期限为20年 ⑴用等额本息还款法,计算每月应还本息(每月月供).20年总利息 ⑵用等额本金还款法,计算每月应还本息(每月月供).20年总利息? ⑶比较两种 ...
- 等额本息还款法贷款利息计算方法及还款计划
贷款后一般有两种方法还款:等额本金.等额本息,对于房奴一族来说,买房后手头余粮无几,只得选择等额本息还款,尽管等额本金在相同期数的情况下还款能节省不少的利息. 等额本息对还款人来说很简单,就是每个月还 ...
- 等比序列的实际应用 —等额本息还款金额公式推导
缘起 等额本息是买房按揭贷款时最常用的一种还款方式,其意义从字面就可以理解,就是每期还款的本金加利息之和相等.我们在计算每期应还本金和利息时,在Excel中可以方便的使用函数PMT(rate,nper ...
- 某用户为购房办理商业贷款,选择了按月等额本息还款法,计算公式如下,在贷款本金(loan)和月利率(rate)一定的情况下,住房贷款的月还款(money)取决于还款月数(month)
#include<stdio.h> #include<math.h> int main() {int l,c,month;float money;double r;printf ...
- 写一个MySql存储过程实现房贷等额本息还款计算(另外附javascript代码)
写一个MySql存储过程实现房贷等额本息还款计算 MySql存储过程代码如下: DROP procedure IF EXISTS `calc_equal_interest_proc`;DELIMITE ...
- excel 等额本息还款每期本息计算_零基础入门融资租赁计算(第三讲)——设计租金方案...
导语:本期我们将讲解如何设计融资租赁租金方案,以及设计的步骤和核心本质.通过本章的学习你将了解如何设计最基本的租金方案和计算该方案下的IRR. 1 融资租赁IRR计算的逻辑框架和黄金原则: (1)宏观 ...
- java 模拟贷款实现等额本息还款
还是菜鸟的我,在学习完java面向对象的思想后编写了一个模拟贷款的程序!! 一.首先创建一个类用于给变量赋值和输出. 代码如下: public class Loan {private double m ...
- 使用Excel中PPMT函数和IPMT函数进行等额本息还款的计算方法
在处理等额贷款业务时,用户经常需要计算贷款金额以及本金.利息等.在Excel中,使用PMT函数可以计算每期应偿还的贷款金额,使用PPMT函数和IPMT函数可以计算每期还款金额中的本金和利息.下面介绍使 ...
- 3、住房贷款分公积金贷款和商业贷款,还款方式有等额本息还款和等额本金还款,贷款利率如下表所示。编写一程序,输入贷款总额、贷款类型和贷款年限,计算每期的还款额和总还款额。
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<string.h> void fun1(float sum ...
最新文章
- python函数中参数前面的*和**的含义
- springboot连接SQL数据库配置application
- 方维O2O系统 后台业务员功能开发
- es6删除数组某一项_精学手撕系列——数组扁平化
- 操作系统知识点整理【均来自于网络】
- noi 7627 鸡蛋的硬度
- php ajax 域名查询,PHP+AJAX 域名查询 PHP 源代码
- JavaWeb——什么是Session及Session的用法
- 【MV】ルカルカ ナイトフィーバー 鼻血姬、爱川饭拍版
- 全向轮机器人运动学分析
- Linux环境下——C语言聊天室项目
- Shader step函数实现线条拼色
- 人工智能给未来教育的挑战
- 电子签核系统的设计(一) - Requirements / Design
- 一种基于机器学习的电影推荐系统设计
- Centos 安装OpenStack
- Do Svidaniya,向 NGINX 创始人 Igor 致敬
- 解析微信开发之搜索歌曲
- [SDOI2009][BZOJ 1226]学校食堂
- 使用flv.js实现flv格式的监控视频流播放
热门文章
- 在VS Code上搭建C/C++环境
- 工作站 服务器 监控系统,电网工作站智能安全监控系统的设计与实现
- mysql 初始化my.cnf_my.cnf初始化配置
- Foxmail上Gmail打不开登录不了邮箱最新解决方法
- pyqt创建透明窗体
- 欧洲足球协会联盟使用区块链发售马德里德比超级杯门票
- python编写函数判断奇偶数_python判断奇数
- python 打印下标和值
- C# 打开和关闭软键盘
- python os.walk如何不遍历隐藏文件,Python os.walk() 遍历出当前目录下的文件夹和文件...