当前位置: 我的世界 > 游戏攻略 > 正文

我的世界中精确计算圆周率的各种方法(3)

小编:铅笔时间:2015-01-22 10:30回到游戏园首页

  其实,这个代码是不完全的,应该补足上小数位为0的检查计分板。但是由于我们计算的目标为π而不是所有可能的小数,所以随便啦,不需要考虑那么多情况。

  毫无疑问,求π的话最好还是利用公式法去计算,毕竟增加了计分板四则,不用真是太可惜了。

  公式的话其实百度百科或者wiki里面比比皆是,而关于我们需要什么公式呢,很简单,我们先要简单的!

  因为实际上计分板的加减乘都还算是比较好用的,至于除嘛,计分板的是整数除法并且不带四舍五入,这个设定既不方便又很方便,除法嘛,就按惯例来用一个计分板储存整数位,一个计分板储存小数位,基本上作为简单计算器是够用了,其他例如开方之类的计算,我们也会有很多简化并高度适用计算机的算法,最有名的例如雷神之锤三里的快速开方取倒数的方法,关于求π的我们也有高斯-勒让德算法,25次迭代可以计算到π后4500万位的数字。

  话题有点岔开了,其实我们只需要测试最简单的计算算法就好啦,那么我们需要什么样的公式呢?

  我在百度百科里找到一个看上去不错的公式,Leibniz定理,我的世界中精确计算圆周率的各种方法,这个公式的优点是计算过程非常简单,但是缺点也很明显,我们可以看出这个式子的收敛速度比较慢,如果我们要精确到小数后一位的话,我们起码得等到处理第6项即1/11≈0.091,即所处理的小数有效数字已经退至十分位之后,这时除了进位没有什么能影响到前面的数字,同理如果要精确到百分位得等到1/111之后,千分位则要1/1111,综上,每精确一位小数我们所需等待的时间成指数级增长。。。至少我挂机没计算出万分位。。。

  下面上图,这是这个公式的cb化处理,由于尝试压缩时间,右上去掉了一个中继器,可能导致不稳定,一旦加上,将会100%稳定,与Excel内部的计算结果完全相同。存档过会发布。

我的世界中精确计算圆周率的各种方法

  附上计算结果,

我的世界中精确计算圆周率的各种方法

  当然,虽然我还未完成,但是我还是比较想制作出一个mc里的快速算法,但仔细想了想。。。要直接做出可以足够支撑快速算法的位数的系统我还是有点压力

  但是现在正在做一个可以计算56位的圆周率的机器,主要原理是使用了泰勒展开。

  姑且上个图,留待日后更新。

我的世界中精确计算圆周率的各种方法

  我的世界蜡笔小新皮肤下载

  我的世界不知火舞皮肤下载

  我的世界新爆炸物全测评 大杀器的盛宴

分享到:更多

游戏信息

我的世界
我的世界类型:休闲娱乐平台:PC,iOS,安卓电脑版下载
  • 游戏大礼包
  • 手游开测表