Algorithm 流式pi十进制数字发生器算法

Algorithm 流式pi十进制数字发生器算法,algorithm,streaming,decimal,digits,pi,Algorithm,Streaming,Decimal,Digits,Pi,其思想是通过HTTP实现RFC3091(“Pi数字生成协议”)。我一直很难找到一个流(和/或插口)算法,它实际上可以产生正确的十进制扩展 是的,有很多实现,但大多数都需要预先分配缓冲区,缓冲区的大小等于请求的位数。显然,这对于生成无穷无尽的数字流是行不通的 用C/Py/PHP/etc实现是理想的 谢谢 这个问题将是课堂上典型的练习,因为它会让学生努力寻找答案,而答案无法通过简单的互联网搜索下载,这就是为什么我会做出这样的评论。然而,我也怀疑OP不善于搜索,因为我很快就找到了很多有用的材料,我将在

其思想是通过HTTP实现RFC3091(“Pi数字生成协议”)。我一直很难找到一个流(和/或插口)算法,它实际上可以产生正确的十进制扩展

是的,有很多实现,但大多数都需要预先分配缓冲区,缓冲区的大小等于请求的位数。显然,这对于生成无穷无尽的数字流是行不通的

用C/Py/PHP/etc实现是理想的


谢谢

这个问题将是课堂上典型的练习,因为它会让学生努力寻找答案,而答案无法通过简单的互联网搜索下载,这就是为什么我会做出这样的评论。然而,我也怀疑OP不善于搜索,因为我很快就找到了很多有用的材料,我将在稍后介绍

StackOverflow不是供人们为您编写代码的网站。这里考虑的是这种性质的问题。我们会帮助您使用您拥有的代码,但我们不会免费为您提供代码。目前,你还没有一个算法、代码或数学,而这正是你所期待的。你必须付出更多才能得到回报

如果你不懂生成无限位数Pi序列的数学,你可以问哪个更适合这个任务。如果你想讨论像这样的课堂练习,可以到这里来。如果您想与程序员进行更全面的交谈,请访问以下网站:

嗯。现在来看看答案

一个快速的谷歌发送我到这里:

这引用了:

  • 大卫·贝利、彼得·博文和西蒙·普劳夫。“关于各种多段对数常数的快速计算”,数学。公司。66(1997),903-913
  • Victor Adamchik和Stan Vang,“pi的简单公式”,Amer。数学。每月104(1997),852-855
  • 并使用以下公式:

    Pi=SUMk=0到无穷大16-k[4/(8k+1)-2/(8k+4)-1/(8k+5)-1/(8k+6)]

    计算Pi的十六进制数字,而不存储任何以前的数字。 这很容易用当前十六进制数字和数字计数的简单持久存储编码


    另请参见

    中的相关讨论。您是否要求我为您做家庭作业?这就是问题所在吗?这只是出于一般的兴趣,令人惊讶的是,我在谷歌上搜索了一个小时却找不到它。请注意,我不是数学家,因此没有真正进入原始文献。我认为接触SO的集体智慧是获得良好提示或工作方法链接的好方法。不过,将公式转换为代码并不太懒。