java 圆周率_Java 计算圆周率
圆周率快查
根据数列
public class Example {
public static void main(String[] args) {
double pi = 0.0;
for (double i = 1.0; i < 10000000000.0; i++) {
pi += 4 * (i % 2 == 0 ? -1 : 1) / (2 * i - 1);
}
System.out.println(pi);
}
}
使用泰勒公式
import java.math.BigDecimal;
public class Example {
private static int n = 50000;
public static void main(String[] args) {
BigDecimal part1 = arctan(57).multiply(new BigDecimal(176));
BigDecimal part2 = arctan(239).multiply(new BigDecimal(28));
BigDecimal part3 = arctan(682).multiply(new BigDecimal(-48));
BigDecimal part4 = arctan(12943).multiply(new BigDecimal(96));
BigDecimal part = part1.add(part2).add(part3).add(part4);
System.out.println(part.toString());
}
public static BigDecimal arctan(int x) {
int n2 = n + 2;
BigDecimal result = BigDecimal.ZERO;
BigDecimal xsquare = new BigDecimal(x * x);
BigDecimal bigx = new BigDecimal(x);
BigDecimal temp;
BigDecimal res = BigDecimal.ONE.divide(bigx, n2, BigDecimal.ROUND_HALF_EVEN);
boolean b = true;
for (int i = 1;; i += 2) {
temp = res.divide(new BigDecimal(i), n2, BigDecimal.ROUND_HALF_EVEN);
if (temp.compareTo(BigDecimal.ZERO) == 0) {
break;
}
if (b) {
result = result.add(temp);
} else {
result = result.subtract(temp);
}
b = !b;
res = res.divide(xsquare, n2, BigDecimal.ROUND_HALF_EVEN);
}
return result;
}
}
java 圆周率_Java 计算圆周率相关推荐
- java 年龄_Java 计算年龄
定义一个Birthday类,其成员变量有3个整形变量(出生的年月日):year,month,day:提供构造方法对这3个成员变量进行初始化:提供成员变量的get.set方法:成员函数有getAge() ...
- java 方差_java计算方差、标准差(均方差)实例代码
java计算标准差思路 //方差s^2=[(x1-x)^2 +...(xn-x)^2]/n 或者s^2=[(x1-x)^2 +...(xn-x)^2]/(n-1) public static doub ...
- java时间间隔_java 计算两个 日期时间 相间隔多少天小时分钟 等
1.时间转换 data默认有toString() 输出格林威治时间,比如说Date date = new Date(); String toStr = date.toString(); 输出的结果类似 ...
- java中位数_java 计算中位数方法
最近工作需要 要求把python的代码写成java版本,python中有一个np.median()求中位数的方法,java决定手写一个 先说说什么是中位数: 中位数就是中间的那个数, 如果一个集合是奇 ...
- java复杂性_java – 计算Big-O复杂性
我最终会给这个程序一个类似60,000个400像素图像的输入文件,所以我试着想一想这个代码如何用大输入运行.为了便于阅读,我用"blah"和所有带有简单字母(nn,mm和kk)的A ...
- linux运算圆周率代码,计算圆周率pi的代码
计算至小数点后1000位: #include long a = 10000, b = 0, c = 2800, d, e, f[2801], g; void main() { for (; b - c ...
- java 节气_java计算某个日期是什么节气(24节气)
packagecom.hxk.util;importjava.util.ArrayList;importjava.util.Calendar;importjava.util.Date;/*** Cre ...
- java语言计算圆周率_Java语言简单计算圆周率完整示例
本文实例讲述了Java语言简单计算圆周率完整示例.分享给大家供大家参考,具体如下,希望对大家学习Java语言简单计算圆周率有所帮助. 这两天在网上看到一个题,已知Pi可以用函数4 * (1 – 1/3 ...
- java中怎么引用圆周率_Java简单计算圆周率完整示例
本文实例讲述了java简单计算圆周率.分享给大家供大家参考,具体如下: 这两天在网上看到一个题,已知pi可以用函数4 * (1 – 1/3 + 1/5 – 1/7 + -) 计算,计算出小数点后五位( ...
最新文章
- Win10如何远程连接Windows Server 2008,以及提示“您的凭证不工作”问题解决
- jquery 获取前两个table里的每个tr里面的第二个td
- C#语言使用多态(接口与override) ——帮您剔除对面向对象多态性的疑惑
- MySql Socket 完成数据库的增查Demo
- JS 获取浏览器信息,给出友情提示,避免部分兼容性问题
- es6语法在ios低版本的支持性
- Anaconda——如何“重命名”conda虚拟环境(通过复制和删除操作实现)
- libpython3.7m so静态库_libpython3.7m.dll
- Liunx 环境 docker-安装redis11
- 时间复杂度,贪心算法解最大团问题,回溯算法解0-1背包问题(仅步骤)
- 第四季-专题14-串口驱动程序设计
- Python3下的WIFI密码爆破
- BUG计算机术语,程序员bug什么意思
- java计算税率例子
- 华为HCIE这么多的认证方向,哪个方向最有价值,含金量最高?
- KSO-docker命令大全,基于Linux服务器CentOS7.5 安装docker
- 广州大学计算机学院网安学硕复试经历
- 激活win10正式企业版
- AIX小机不能启动故障-src:11002630代码故障的处理
- ‘mysql‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件。
热门文章
- pyqt5中显示web页面(外部web、本地web)
- 在微信小程序的Page中注入behaviors
- 【C#+SQL Server+打印组件】实现电商快递单打印系统 五:自定义组件和快递单模板设计(附源码和资源)
- Flutter自定义 TabBar
- 大数据企业战略规划高级培训课程
- winform实时获取网卡网速全部源码,获取电脑上传下载速
- JZOJ 5445 失格
- 微信小程序宠物商城项目源码来了~
- 【开源】SixChat WebApp 仿微信朋友圈 PHP OR JSP
- MacBook Pro M1 Parallels Desktop Ubuntu 共享网络设置静态 IP