一.用蒲丰氏投针法在计算机上
𝜋
值(用 matlab 实现)
方法一:
a=4;
l=3;
sum=0;
m=5^13;
n=2^32;
x1=1;
for k=1:10000000
x2=mod(m*x1,n);
x1=x2;
x=x2*1.0/n;
x2=mod(m*x1,n);
x1=x2;
y=x2*1.0/n;
x2=mod(m*x1,n);
x1=x2;
z=x2*1.0/n;
if z*a<l*y/((2*x-1)^2+y^2)^0.5
sum=sum+1;
end
end
p=sum/k;
Pi=2*l/(a*p)
Pi = 3.0872
方法二:
a=4;
l=3;
sum=0;
m=5^13;
n=2^32;
x1=1;
for k=1:10000000
x2=mod(m*x1,n);
x1=x2;
x=x2*1.0/n;
x2=mod(m*x1,n);
x1=x2;
y=x2*1.0/n;
if x*a<l*sin(y*pi)