Java使用Math.random()结合蒙特卡洛方法计算pi值示例
作者:软货 时间:2023-05-10 10:43:13
本文实例讲述了Java使用Math.random()结合蒙特卡洛方法计算pi值。分享给大家供大家参考,具体如下:
一、概述
蒙特·卡罗方法(Monte Carlo method),也称统计模拟方法,是二十世纪四十年代中期由于科学技术的发展和电子计算机的发明,而被提出的一种以概率统计理论为指导的一类非常重要的数值计算方法。是指使用随机数(或更常见的伪随机数)来解决很多计算问题的方法。与它对应的是确定性算法。
详细可参考百度百科:https://baike.baidu.com/item/%E8%92%99%E7%89%B9%C2%B7%E5%8D%A1%E7%BD%97%E6%96%B9%E6%B3%95
二、实现代码
/**
* Monte Carlo algorithm
*/
import java.math.*;
public class PI {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
double xf = 0.0d;
double yf = 0.0d;
int total = 0;
for(int i = 0;i<1000000;i++){
xf = Math.random();
yf = Math.random();
if(Math.sqrt(xf*xf+yf*yf) < 1)
total++;
}
System.out.println("脚本之家测试结果:");
System.out.println(4*(total/1000000.0));
}
}
运行结果:
希望本文所述对大家java程序设计有所帮助。
来源:http://blog.csdn.net/baidu_22502417/article/details/46439267
标签:Java,random,计算
0
投稿
猜你喜欢
用Java设计模式中的观察者模式开发微信公众号的例子
2023-01-17 05:30:58
Java NegativeArraySizeException异常解决方案
2023-10-31 07:16:51
Mybatis分解式查询使用方法
2023-08-16 04:15:06
Android实现记事本功能(26)
2023-02-17 22:30:23
Android编程获取网络时间实例分析
2022-08-05 16:28:01
浅谈c#.net中巧用ToString()将日期转成想要的格式
2022-02-02 18:14:07
基于Java代码实现支付充值的通用流程
2021-09-04 00:48:45
如何用Dos命令运行Java版HelloWorld你知道吗
2022-07-24 22:32:26
Android实现为Notification加上一个进度条的方法
2022-12-14 00:39:01
Spark SQL关于性能调优选项详解
2021-11-05 22:32:56
解决spring boot2集成activiti6踩过的坑
2022-03-31 16:46:06
android 网络编程之网络通信几种方式实例分享
2022-01-05 14:23:39
详解Java语言中一个字符占几个字节?
2023-08-26 11:45:40
JAVA Optional类用法分享
2022-01-07 02:36:08
spring 整合mybatis后用不上session缓存的原因分析
2021-12-09 10:11:03
Android中使用TextView实现高仿京东淘宝各种倒计时效果
2021-05-26 21:32:26
Spring中的注解之@Override和@Autowired
2022-08-07 19:56:47
C#判断上传文件是否是图片以防止木马上传的方法
2023-10-02 13:13:50
零基础写Java知乎爬虫之先拿百度首页练练手
2022-11-14 09:07:05
C# Directory.GetFiles()函数案例详解
2022-12-10 04:51:02