原来圆周率还可以这样算!4行代码自己动手计算圆周率!
本文由 小茗同学 发表于 2018-01-05 浏览(7972)
最后修改 2020-04-10 标签:圆周率

本文有待完善,参考:https://www.zhihu.com/question/20756479

https://zh.wikihow.com/%E8%AE%A1%E7%AE%97%E5%9C%86%E5%91%A8%E7%8E%87-Pi

先看代码

4行代码实现计算圆周率:

var pai = 0, flag = false;
for(var i=1; i<10000000; i+=2) {
	pai += ((flag = !flag) ? 1 : -1) * 1 / i;
}
console.log('圆周率π:'+pai*4);

计算出来的圆周率:3.1415926335902506
圆周率的标准结果:3.1415926535897932...

可以看到已经精确到小数点后6位数了,还是挺不错的!

原理

用圆内接多边形的周长除以圆半径来近似:

(1 - 1/3 + 1/5 - 1/7 + 1/9 - 1/11 + ...) * 4

355/113
3927/1 250

.早在三国时期,著名数学家刘徽就用割圆术将圆周率精确到小数点后3位,南北朝时期的祖冲之在刘徽研究的基础上,将圆周率精确到了小数点后7位,这一成就比欧洲人要早一千多年.
祖冲之是和他儿子一起从事这项研究工作的,当时条件很差.他们在一间大屋的地上画了一个直径1丈的大圆.从内接正6边形开始计算,12边形,24边形,48边形的翻翻,一直算到96边形,计算的结果和刘徽的一样.接着,内接边数再逐次翻翻,边数每翻一次,要进行7次加减运算,2次乘方,2次开方,运算的数字都很大,很复杂,在当时的条件下,是十分困难的.祖冲之父子一直把边形算到24576边,得出了圆周率在3·1415926和3·1415927之间,精确到了小数点后7位.其近似分数是 355/113,被称为”密率”.德国数学家奥托在1573年重新得出这个近似分数.当时,欧洲人还不知道在一千多年之前祖冲之就己经算出来了.后来荷兰人安托尼兹也算出这个近似分数,于是欧洲人就把这个称为”密率”的近似分数叫着”安托尼兹率”.