← 数学与统计

圆周率算法竞速

让 Gregory、Nilakantha、Machin-like 和 Chudnovsky 在同一目标下并排比较。你可以看固定时间内谁走得更远,或看固定位数下谁最先到达。

如果你想先理解每种方法的近似过程,请先打开 圆周率近似探索器。这个页面更适合横向比较。需要实用十进制前缀时,再继续到 圆周率数字生成器

其他语言 ja | en | zh-CN | es | pt-BR | fr
3 步开始
  1. 先保持四种算法全部选中,用默认目标跑一次。
  2. 不要只看赢家卡片,要同时看图表和比较表,理解差距是怎么拉开的。
  3. 想复用课堂设置时,可以读取其他示例,或直接复制 URL。
竞速模式

用同一时间预算比较各算法最终能达到多少一致位数。

数值越小,图表点越密;数值越大,日志和 CSV 会更简洁。

算法

第一次建议四种算法都保留,差距会最清楚。

赢家
达到的最佳位数
最快达标
参与比较的算法
模式
目标时间
赢家估计值

竞速图表

横轴是经过时间,纵轴是一致位数。这个图主要用来看趋势,不适合当作不同设备之间的绝对性能测试。

比较表

算法 估计值 绝对误差 一致位数 迭代次数 耗时 ms 状态

教学提示

常见问题

为什么这些算法会这么快拉开差距?

因为它们每一步加入的有效信息量不同,所以相同时间内能获得的正确位数差别会很大。

为什么 Gregory 这么慢?

它的级数很简单,便于从基础讲解,但每一项带来的提升都很有限。

为什么这里 Chudnovsky 更快?

它的收敛速度更激进,因此每增加一项,往往就会带来更多正确位数。

固定时间和固定位数有什么区别?

固定时间比较的是同一预算下谁走得更远;固定位数比较的是谁最先到达同一目标。

点击停止后会发生什么?

当前运行会立即取消,页面继续保持流畅,并保留最后一次完整记录的结果。

相关计算器