圆周率的一些看法
1、 什么是圆周率?
image在示例图片中,π可以理解为圆与正方形的比值。
2、 圆周率计算方法
这里说一下目前知道的两种方法。
1、随机模拟法
在如图的正方形中随机撒一把芝麻,用随机模拟的方法来估计圆周率π的值.如果撒了1000个芝麻,落在圆内的芝麻总数是776颗,那么这次模拟中π的估计值是3.104。
理论上只要量级足够大,是可以估算出较为精确的圆周率的。
2、割圆法
所谓割圆术,就是不断倍增圆内接正多边形的边数求出圆周率的方法。
以圆内多边形的面积,来无限逼近圆的面积,使正多边形的周长无限接近圆的周长,进而来求得较为精确的圆周率。
3、附上一个求圆周率的c语言源码
#include <stdio.h>
long a = 10000;
long b;
long c = 2800;
long d;
long e;
long f[2801];
long g;
int main()
{
for (; b - c; )
f[b++] = a / 5;
while ( 1 )
{
if ( 0 == b - c )
break;
f[b] = a / 5;
b++;
}
/* f[0 - 2800] = 10000/5 */
for (; d = 0, g = c * 2; c -= 14, printf( "%.4d", e + d / a ), e = d % a )
for ( b = c; d += f[b] * a, f[b] = d % --g, d /= g--, --b; d *= b )
;
while ( 1 )
{
d = 0;
g = c * 2;
if ( 0 == g )
break;
b = c;
while ( 1 )
{
d += f[b] * a;
f[b] = d % --g;
d /= g--;
--b;
if ( 0 == b )
break;
d *= b;
}
c -= 14;
printf( "%.4d", e + d / a );
e = d % a;
}
return(0);}
网友评论