公积金自由还款计算器(by quqi99)
作者:张华 发表于:2010-07-29
版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明
package com.TripResearch;
import java.math.BigDecimal;
/**
* 公积金自由还款计算器
*
* 还款的原则都是先还利息,后还本金。可以告诉您计算利息的方法。利息是按照您实际占压借款资金的时间来计算的。
* 每一期计息都是以您的剩余本金数作为计息的基数,用这个基数乘以月利率(月利率就是贷款年利率÷12(月)),
* 得出来的数额就是您当期应当偿还的利息数。由于您每一期的剩余本金数不一样,每一期支付的利息就不同。举个例子:
* 20万20年,最低还款额为995元,假定月利率为3.825‰。首期还款如果是按最低还款额还款,
* 其中利息部分金额为20万元×月利率(3.825‰))=765元,偿还本金部分为230元;第二期如果还是按照最低还款额还,
* 则利息部分为(20万元-230元)×月利率(3.825‰))=764.12元,偿还本金为230.88元;以后各期以此类推,
* 您可以通过网站右侧公积金贷款计算器自行推算。
* @author: huazhang
* @since: 2010-7-19
*/
public class Test
{
private static final int DEF_DIV_SCALE = 10;
public static double add(double v1, double v2)
{
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.add(b2).doubleValue();
}
public static double sub(double v1, double v2)
{
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.subtract(b2).doubleValue();
}
public static double mul(double v1, double v2)
{
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.multiply(b2).doubleValue();
}
public static double div(double v1, double v2)
{
return div(v1, v2, DEF_DIV_SCALE);
}
public static double div(double v1, double v2, int scale)
{
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.divide(b2, scale, BigDecimal.ROUND_HALF_UP).doubleValue();
}
public static double round(double v, int scale)
{
BigDecimal b = new BigDecimal(Double.toString(v));
BigDecimal one = new BigDecimal("1");
return b.divide(one, scale, BigDecimal.ROUND_HALF_UP).doubleValue();
}
/**
* @param args
*/
public static void main(String[] args)
{
double monthlyPayment = 4000; //月还款额
double totalLoan = 800000; //货款总额,80万
double monthlyRate = 0.00323; //月利率,年利率3.87%除以12=0.00323
int issueNum = 1; //期数
double payedCapitalTotals = 0; //已偿还本金总数
double payedInterests = 0; //已偿还利息总数
System.out.println("期数 本期偿还本金 累计偿还本金 本期偿还利息 累计偿还利息");
while(payedCapitalTotals <= totalLoan){
double remianCapitals = sub(totalLoan, payedCapitalTotals); //剩余本金数
double interest = mul(remianCapitals, monthlyRate); //本期偿还的利息
double payedCapital = sub(monthlyPayment,interest); //本期偿还的本金
payedInterests += interest;
payedCapitalTotals += payedCapital;
System.out.println(issueNum + " " + round(payedCapital,2) + " " + round(payedCapitalTotals,2) + " " + round(interest,2) + " " + round(payedInterests,2));
issueNum ++ ;
}
System.out.println("共" + round(div(issueNum,12),2) + "年还完,共偿还" + round(add(totalLoan,payedInterests),2) + "元");
}
}
分享到:
相关推荐
综合以上信息,我们可以推测这个压缩包可能包含一个针对MediaTek手机的多功能管理工具,它能够进行固件升级、数据管理等多种操作,并且该工具的主程序可能就是"quqi.mrp"文件。对于MTK手机用户来说,这样的软件非常...
它主要用于开发视频播放器、视频编辑工具等应用程序。在DirectShow中,开发者可以利用其提供的组件和接口来实现音视频数据的捕获、处理、编码和解码等功能。本项目以"视频播放源代码directshow开发"为主题,旨在分享...
国内最好的数据库达梦DM8,曲奇网盘下载链接:https://quqi.com/s/1243222/wcOZdaWgUlHrwhOk
混合场景下大规模 GPU 集群构建与实践.pdf
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
走向现代化数据分析架构:趋势与挑战.pdf
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
金融大数据存储实践.pdf
# 基于Spring Cloud Alibaba的系统管理平台 ## 项目简介 本项目是一个基于Spring Cloud Alibaba框架的系统管理平台,采用前后端分离的模式,集成了微服务架构。前端基于RuoYiVue框架,后端采用Spring Boot、Spring Cloud Alibaba技术栈。注册中心和配置中心选型Nacos,权限认证使用Redis,流量控制框架选型Sentinel。 ## 项目的主要特性和功能 1. 用户管理完成系统用户配置,支持用户增删改查、权限分配等功能。 2. 部门管理配置系统组织机构(公司、部门、小组),支持树结构展现和数据权限。 3. 岗位管理配置系统用户所属担任职务。 4. 菜单管理配置系统菜单,操作权限,按钮权限标识等。 5. 角色管理角色菜单权限分配、设置角色按机构进行数据范围权限划分。 6. 字典管理对系统中经常使用的一些较为固定的数据进行维护。 7. 参数管理对系统动态配置常用参数。
这是来自于的c++考试题目
# 基于Python和KissFFT的音频处理系统 ## 项目简介 本项目是一个基于Python和KissFFT库的音乐音频处理系统。它利用Python的简洁语法和强大的数据处理能力,结合KissFFT库的高效傅里叶变换算法,实现对音频数据的分析、处理和转换。项目主要目标是处理音乐音频数据,进行特征提取、频谱分析、频率转换等操作,以便于后续的音乐生成、分析和识别等任务。 ## 项目的主要特性和功能 音频数据加载与预处理项目支持从MIDI文件加载音乐数据,并提供数据过滤、编码等预处理功能,以便于后续处理。 FFT算法实现利用KissFFT库实现快速傅里叶变换(FFT)算法,用于音频信号的频谱分析和频率转换。 音频数据可视化提供可视化工具,用于展示音频信号的频谱分布、音符稀疏性等信息。 模型训练与评估支持模型训练与评估,包括自编码器、LSTM等模型,用于音乐生成、预测等任务。
PADSLayout 常用封装库 ORCAD 常用原理图元器件库 常用的都用,喜欢的朋友们抓紧拿下
云原生数据库管控探索和实践.pdf
yolo系列算法目标检测数据集,包含标签,可以直接训练模型和验证测试,数据集已经划分好,包含数据集配置文件data.yaml,适用yolov5,yolov8,yolov9,yolov7,yolov10,yolo11算法; 包含两种标签格:yolo格式(txt文件)和voc格式(xml文件),分别保存在两个文件夹中; yolo格式:<class> <x_center> <y_center> <width> <height>, 其中: <class> 是目标的类别索引(从0开始)。 <x_center> 和 <y_center> 是目标框中心点的x和y坐标,这些坐标是相对于图像宽度和高度的比例值,范围在0到1之间。 <width> 和 <height> 是目标框的宽度和高度,也是相对于图像宽度和高度的比例值
在本文中,我们利用Matlab软件建立了一个简单的电力系统模型,该模型由电力系统模块及测量模块组成,能够模拟变压器故障,对不同故障进行仿真波形分析。
该资源内项目源码是个人的课程设计、毕业设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过严格测试运行成功才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
内容概要:本文档为大学课程Java程序设计的期末大作业指导书,涵盖了多个不同难度的任务,旨在测试学生的Java编程能力以及对Java GUI的设计理解和运用水平。任务包括使用for循环计算指定数学表达式的值、实现两个已定义矩阵相乘的操作、利用Java GUI构建简易的功能型应用程序——一个可以执行基本算术操作的计算器、以及一个小而有趣的游戏——网球接球挑战游戏。通过解决这些问题,学生将加深对Java编程环境及其相关API的理解和掌握,提高自身的编码实践能力和创新思考空间。 适合人群:适用于正在进行Java学习阶段的学生、对提升个人编程技能感兴趣的初学者或希望巩固基础的专业开发者。 使用场景及目标:本项目作为一次全面考察学生技术实力的大作业形式存在,旨在促使同学们回顾所学知识并在实践中深化记忆。此外,还可以作为一种教学工具来帮助新手快速入门Java语言和图形界面设计的相关技巧。 其他说明:需要注意的是,在解答过程中遇到困难的同学可以通过QQ讨论组向教师求助;然而,为了确保作业的公平公正,教师不会直接给出解决方案的具体方法论。