【问题标题】:Memory and time efficient PI algorithm (binary)内存和时间高效的 PI 算法(二进制)
【发布时间】:2014-02-07 19:21:56
【问题描述】:

只是一个非常简单的问题。我想在 Arduino 微处理器上高效且连续地计算 pi 的二进制数字。这个项目没有实际的计算目的,它是为朋友的艺术装置,在生成 pi 的数字时用光脉冲。 因此,我需要一个算法顺序生成 PI 的二进制数字,并满足以下要求: - 内存要求低 - 速度并不是很重要,因为脉冲光的频率大约是一秒 - 良好的渐近时间复杂度,例如,BBP 算法随着计算的数字随时间线性增长,并且在 Arduino 板上很快就会变慢,我可以计算前面的数字,因为我想展示它们。

有什么想法吗?真的非常感谢!

马特奥

【问题讨论】:

  • 仅限于非专业用途的最佳方法是生成前 20 位数字,然后随机生成其他数字 ;-) 我是认真的。
  • 或者在 PC 上计算前几千位并将它们复制到 Arduino。
  • PI 是一个无理数,因此内部表示将是浮点数或双精度数。当您谈论位时,我假设您知道您希望使用的数字的特定浮点表示。

标签: c binary arduino digits pi


【解决方案1】:

嗯,你可以很容易地在网上找到数十亿个 pi 的二进制数字,只需将它们复制,放入一个文件中,然后......

我真的认为这是解决您的问题的最佳方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-11-14
    • 2022-01-16
    • 1970-01-01
    • 2020-12-30
    • 1970-01-01
    • 1970-01-01
    • 2016-08-28
    • 2017-08-01
    相关资源
    最近更新 更多