【发布时间】:2021-11-15 21:48:20
【问题描述】:
在编程中,我只使用整数。但这一次进行一些计算。我需要计算 Euler-Mascheroni Constant γ 。直到小数点后第 n 个。{虽然 n ∈ [30, 150] 对我来说已经足够了。
- [x] = gif(x) = math.floor(x)
但是,我怀疑精度 Numerical Algorithm
我需要使用 Python 获得更高的准确度。
【问题讨论】:
-
既然它是一个常数,如果您需要它进行其他计算,为什么不在源代码中包含前几百位数字呢?另一方面,如果您需要自己进行近似计算(例如,作为家庭作业项目),那么
decimal模块是您的最佳选择。 -
@JohnColeman(所以你教数学并给我作业????)谢谢!困难在于收敛。
-
虽然常数可能是一个无理数,但如果您想自己计算该值,您可能还需要考虑使用 Python 的
fractions模块。这将减少选择特定小数精度的需要。 -
我懒得写 Python 代码,但是来自Xavier Gourdon and Pascal Sebah 的站点看起来很棒。具体来说,page 的第 6 段给出了超过 1600 位小数的 C 代码...
-
@DarshanPatil:在你的源代码中包含前 150 位数字有什么困难?在源代码中包含前 150 位数字意味着您只需从任何参考源获取前 150 位数字,或者使用 Maple 等专用软件计算一次,然后就完成了。无论您是什么意思,您都不必处理“融合”。
标签: python algorithm math precision floating-accuracy