蒙特·卡罗方法求PI

蒙特·卡罗方法(Monte Carlo method),也称统计模拟方法,是二十世纪四十年代中期由于科学技术的发展和电子计算机的发明,而被提出的一种以概率统计理论为指导的一类非常重要的数值计算方法。是指使用随机数(或更常见的伪随机数)来解决很多计算问题的方法。与它对应的是确定性算法。蒙特·卡罗方法在金融工程学,宏观经济学,计算物理学(如粒子输运计算、量子热力学计算、空气动力学计算)等领域应用广泛。

假设圆的半径是1,那么圆的面积就是 pi,正方形的的面积是4,随机产生正方形中的点,那么这个点落在园的概率是圆面积/正方形面积,g=pi/4这个点落在圆的判断 x*x+y*y<=1 。

代码:

public class Pi {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		double x;
		double y;
		double count=0;
		int m=0;int n=100000000;
		while(m<n){
		x = Math.random()*2-1;
		y = Math.random()*2-1;
		if(x*x+y*y<=1){
			count++;
		}
		m++;
		}
		double Pi=count/n*4;
		System.out.println("所求的pi为:"+Pi);
	}
}
运行结果:



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值