import java.util.Scanner;

public class 蒙特卡罗算法计算圆周率
{
static double m(int n)
{
double pi;
double x,y;
int i,sum;
sum=0;
for(i=1;i<n;i++)
{
x=Math.random();
y=Math.random();
if((x*x+y*y)<=1)

sum++;

}
pi=4.0*sum/n;
return pi;
}
public static void main(String[] args)
{
int n;
double pi;
System.out.println("蒙特卡罗概率算法计算π:");
Scanner i=new Scanner(System.in);
System.out.print("输入点的数量:");
n=i.nextInt();
pi=m(n);
System.out.println("pi="+pi);

}

}

输出:

蒙特卡罗概率算法计算π:
输入点的数量:44444444
pi=3.1415252714152526