java中pi_Java-Pi的几种实现
1、无穷级数计算 p = 1 - 1/3 + 1/5 -1/7+..... π=4p
2、使用 Nilakantha 级数 π = 3 + 4/(2*3*4) - 4/(4*5*6) + 4/(6*7*8) - 4/(8*9*10) + 4/(10*11*12) - (4/(12*13*14) .....
3、假设有一个圆半径为1,所以四分之一圆面积就为PI,而包括此四分之一圆的正方形面积就为1,
如果随意的在正方形中投射飞标(点)好了,则这些飞标(点)有些会落于四分之一圆内,假设所投射的飞标(点)有n点,在圆内的飞标(点)有c点,则依比例来算。
public class Main {
public static void main(String[] args) {
gailv();
}
//无穷级数计算 1 - 1/3 + 1/5 -1/7+.....
public static void wuqiongjishu() {
double p1 = 1, p2 = 0;
double i = 1;
double flag = 1;
double diff = Math.pow(0.1, 9);
while (Math.abs(p1 - p2) >= diff) {
i += 2;
flag = -flag;
p2 = p1;
p1 = p1 + flag / i;
}
System.out.println(p1 * 4);
}
public static void gailv() {
int N = (int)Math.pow(2,25);
double a[] = new double[N];
double b[] = new double[N];
for (int i = 0; i < N; i++) {
a[i] = Math.random();
b[i] = Math.random();
}
int cnt = 0;
for (int i=0;i
double c = a[i] * a[i] + b[i]*b[i];
if (c<=1){
cnt ++;
}
}
System.out.println(4.0*cnt/N);
}
}
java中pi_Java-Pi的几种实现相关推荐
- JDOM是JAVA中最常用的一种解析XML的工具
JDOM是JAVA中最常用的一种解析XML的工具,我们可以从JDOM的官方网站www.jdom.org 下载JDOM1.0.ZIP压缩包,将其解压,将JDOM.JAR文件配置到classpath当中去 ...
- java直接调用复制文件,java中文件复制的4种方式,java文件的复制
java中文件复制的4种方式,java文件的复制 今天一个同事问我文件复制的问题,他一个100M的文件复制的指定目录下竟然成了1G多,吓我一跳,后来看了他的代码发现是自己通过字节流复制的,定义的字节数 ...
- Java中HashMap遍历的两种方式
第一种: Map map = new HashMap(); Iterator iter = map.entrySet().iterator(); while (iter.hasNext()) { Ma ...
- Java中创建数组的几种方法
Java中创建数组的几种方法 public static void main(String[] args) { //创建数组的第一种方法 int[] arr=new int[6]; int intVa ...
- 在 Java 中初始化 List 的五种方法
转载自 在 Java 中初始化 List 的五种方法 Java 中经常需要使用到 List,下面简单介绍几种常见的初始化方式. 1.构造 List 后使用 List.add 初始化 List< ...
- 高级 | Java中获取类名的3种方法
转载自 高级 | Java中获取类名的3种方法 获取类名的方法 Java 中获取类名的方式主要有以下三种. getName() 返回的是虚拟机里面的class的类名表现形式. getCanonical ...
- JAVA中集合输出的四种方式
在JAVA中Collection输出有四种方式,分别如下: 一) Iterator输出. 该方式适用于Collection的所有子类. public class Hello {public stati ...
- Java中List集合的三种遍历方式(全网最详)
Map集合:链接: Map集合的五种遍历方式及Treemap方法 Set集合:链接: Java中遍历Set集合的三种方法 TreeSet集合:链接: Java深入了解TreeSet,和迭代器遍历方法 ...
- Java中String字符串截取几种方法(substring,split)
Java中String字符串截取几种方法 substring,split 这是一个Java中的String的基础用法的演示. 下面通过代码对大家进行讲解 substring 这里用来ndexOf,la ...
- java中Map遍历的四种方式
java中Map遍历的四种方式 在java中所有的map都实现了Map接口,因此所有的Map(如HashMap, TreeMap, LinkedHashMap, Hashtable等)都可以用以下的方 ...
最新文章
- 炫技,从12.67s到1.06s的网站性能优化实战
- 为什么我能从普通程序员干到大厂总监?
- 03-老马jQuery教程-DOM操作(上)
- linux中间隔10ping一次脚本,linux批量ping脚本shell
- 写在方法中的路由跳转
- Boost:aligned delete对齐删除的测试程序
- ASP.NET的地址重写“.NET研究”(URLRewriter)实现原理及代码示例
- Java工程师必备技能
- mybatis配置insert/update/delete同一个模板
- mysql管理数据 并上传至云端_怎样将MySQL数据库上传到服务器
- c语言小球触地问题,OC语言中关于触摸事件和手势
- 黑马程序员-学习日志-文件的合并
- 【华人学者风采】魏少军 清华大学
- 电商时代得流量者得天下,思域流量要怎么做
- 容器-Docker《二》命令帮助镜像管理
- 计算机音乐数字谱抖音,抖音计算器谱子有哪些 计算器音乐乐谱大全
- 一个算法工程师的日常是怎样的?
- 基于Java图书馆管理系统、JAVA图书借阅系统设计与实现 毕业设计开题报告
- 利用html加css以及JavaScript写一个学生后台管理系统简单平台
- WebMagic Java爬虫框架初探
热门文章
- WF4 持久化 第四篇
- Centos6.5集群安装64位hadoop2.2.0
- ARM1176JZF-S/S3C6410 内存地址转换
- asp.net的一个不错日期控件
- 【译】Withdrawal symptoms
- Jmeter CSV 参数化/检查点/断言
- 一些对制作网站有帮助的站点
- Codeforces 486D. Valid Sets
- BootStrap_01之全局样式
- 安装VS2010 无法打开数据文件'C:\Users\Administrator\AppData\Local\Temp\SIT12124.tmp\deffactory.dat的解决方法...