圆周率π是人类获得的最古老的数学概念之一,早在大约3700年前(即公元前1700年左右)的古埃及人就已经在用256/81(约3.1605)作为π的近似值了。几千年来,人们一直没有停止过求π的努力。
  你也许能写出 π= 3.1415926535,利用Mathematica软件容易求出π到几百位:
In[1]=N[Pi,100]
  Out[1]=3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117068
  下面我们介绍几种π的计算方法:
  一、祖冲之的计算方法 
  据史料记载,某年祖冲之家新建了一所房屋,他将最大的一个房间铺成地板,选择房间的中心点作为圆心,根据房间的大小,画出一个最大的圆,首先在圆周上作出一个三角形,将圆周三等分,然后将每段弧两等分,即将圆周六等分,依此进行下去,一直进行到不能够分下去为止。第N次,圆周被分成3N等分,用3N等分后正3N边形的边长来近似计算3N等分后的每段弧长,祖冲之就是用这种方法,将圆周率的精确度计算到3.15926与3.15927之间。

 怎样计算圆周率1

  二、幂级数展开法
  从十七世纪中叶起,人们开始用更先进的分析方法来求π的近似值,其中应用的主要工具是收敛的无穷乘积和无穷级数。

怎样计算圆周率2

Mathematica计算:

In[2]= k=20000;S1=N[4*Sum[(-1)^(n-1)/(2n-1),{n,1,k}],18]

  Out[2]= 3.14154265358982449

  该方法收敛速度太慢,更快的公式有:

怎样计算圆周率3

Mathematica计算:

In[3]= k=10;

  S2=N[4*Sum[(-1)^(n-1)*(1/2)^(2n-1)/(2n-1)+(-1)^(n-1)*(1/3)^(2n-1)/(2n-1),

  {n,1,k}],20]

  Out[3]=   3.14159265358979323846

  3、数值积分方法

  由数值积分的方法我们可以知道:

怎样计算圆周率4

  因此,可以利用数字积分法来计算π的近似值。

 Mathematica计算:

  梯形法:

In[4]=  a = 0; b= 1;y[x_]:= 4/(1 + x^2)

  n = 1000

  pis1 = N[(b-a )/n*(Sum[y[a+i*(b-a)/n], {i,1,n-1}]+(y[a]+y[b])/2),100]

  Out[4]= 3.1415924869231265717979608435969622546877898925997631081083727

  31390288109790562585631933321397748830

  辛普森公式:

  In[5]= a = 0; b= 1;y[x_]:= 4/(1 + x^2)

  n = 1000;

  pis2 = N[(b-a)/6/n*((y[a]+y[b])+2*Sum[y[a+i*(b-a)/n], {i,1,n-1}] +

  4*Sum[y[a+(i-1/2)*(b-a )/n],{i,1,n}]),100]

  Out[5]=   3.141592653589793238462023343596963516081019055794419480210497

  134309960210824915446285805237414852023

  4、蒙特卡罗方法

怎样计算圆周率5

Mathematica计算:

In[6]=  n=10000;

  S4= Block[{i,m=0},

  For[i=n,i>0,i--,m=m+If[Random[]^2+Random[]^2<=1,1,0]];

  N[4*m/n,10]]

  Out[6]=    3.1352