我是靠谱客的博主 坚定帽子,最近开发中收集的这篇文章主要介绍Java求实际利率之Excel函数RATE,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

      在excel里有个函数RATE是求实际利率的,在网上搜罗了半年,公式倒是找到不少,可以没有一个实现的算法,郁闷,自己研究,写一个出来,做个备忘

 

 

公式:

上面的太复杂,来个简单的:

使用JAVA求实际利率


/**
* 实际利率法
* @author Bean(mailto:mailxbs@126.com)
* @param a 现值
* @param b 年金
* @param c 期数
* @param cnt 运算次数
* @param ina 误差位数
* @return 利率
*/
public static double rate(double a,double b,double c,int cnt,int ina){
double rate = 1,x,jd = 0.1,side = 0.1,i = 1;
do{
x = a/b - (Math.pow(1+rate, c)-1)/(Math.pow(rate+1, c)*rate);
if(x*side>0){side = -side;jd *=10;}
rate += side/jd;
}while(i++<cnt&&Math.abs(x)>=1/Math.pow(10, ina));
if(i>cnt)return Double.NaN;
return rate;
}
public static void main(String agrs[]) {
{
Double 现值 = 7944760.00d;
Double 年金 = 186627.21d;
Double 期数 = 48d;
//计算200次,比Excel20次要精确,误差精确到小数点后10位
System.out.println(rate(现值,年金,期数,200,10));
}
}

 计算输出0.00501013209570014,与Excel的0.00501013309186311很接近了,偷乐一下

最后

以上就是坚定帽子为你收集整理的Java求实际利率之Excel函数RATE的全部内容,希望文章能够帮你解决Java求实际利率之Excel函数RATE所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部