我该如何使用贝利-博尔温-普洛夫公式计算π的第n个二进制(或十六进制)数字?我已经在互联网和本站彻底搜索了答案,但仍未找到实际实现该算法的方法。
维基百科上的贝利-博尔温-普洛夫页面告诉我,“该方法可以计算第n位数字而无需计算前n-1位数字,并且可以使用小型高效数据类型”。问题是,该页面只以以下形式解释了该公式:
维基百科上的贝利-博尔温-普洛夫页面告诉我,“该方法可以计算第n位数字而无需计算前n-1位数字,并且可以使用小型高效数据类型”。问题是,该页面只以以下形式解释了该公式:
Pi = SUM k=0 to infinity ...
但是我不知道如何使用这些信息来实际找到圆周率的第n位数字。(你知道,我不想找到Pi本身的值,也不想计算无穷大的总和...)我只需要在任何编程语言或伪代码中看到一个实际操作的例子。
int nthDigitOfPi(long n) {
// calculate and return the n-th binary digit of pi
// ...
}
非常感谢您的帮助。您的帮助将不胜感激。