- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经找到了“The Coder's Apprentice Learning Programming with Python 3”练习 8.3 的解决方案,它与作者的解决方案略有不同。我想在这里问一下这是否正确。
练习文本如下:Grerory-Leibnitz 级数将 pi 近似为 4 ∗ ( 1/1 − 1/3 + 1/5 −1/7 + 1/9... ) 。编写一个函数,根据该级数返回 pi 的近似值。该函数有一个参数,即一个整数,表示必须计算括号之间的项数。
def leibnitz(n):
tot = 0
i=1
c=1
for x in range(0,n):
if c % 2 != 0:
tot = tot + (+1.0/i)
i=i+2
c=c+1
elif c % 2 == 0:
tot = tot + (-1.0/i)
i=i+2
c=c+1
return tot*4
打印(莱布尼茨(98))
#通过固定计数器“c”,我们可以设法确定序列的下一个分数是正分数还是负分数。系列中的第一个分数 (1/1) 是正数,因此我们从“c”= 1 的奇数计数器开始。然后只要计数器为偶数,我们就会考虑负分数等等。
这个解决方案对吗?
我在上一个版本中犯了一个错误,现在更新了它。
最佳答案
是的,这个方法非常有效。一种改进方法是删除变量 c
并将其替换为 x+1
。
此外,只是为了好玩,如果你导入数学,你可以使用常量math.pi
来获取所涉及的错误:
import math
def leibnitz(n):
tot = 0
i=1
for x in range(0,n):
if (x+1) % 2 != 0:
tot = tot + (+1.0/i)
i=i+2
elif (x+1) % 2 == 0:
tot = tot + (-1.0/i)
i=i+2
return tot*4
print(math.pi - leibnitz(98))
关于python - python 中的 Gregory-Leibniz 系列函数 - 例如。 8.3 来自编码员的学徒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69101186/
我正在尝试使用多线程并指定要使用的线程数来实现 Java 中的 Gregory-Leibniz。我失败了,因为最后 PI 给我的值为 43。 有人可以帮我吗?如果我不必输入线程数我会很好,但是输入线程
我正在阅读Dagger2的源代码,在ScopedProvider中有静态字段UNINITIALIZED这表明 instance字段尚未初始化。我已经阅读并理解了双重检查惰性初始化习惯用法,但为什么有必
我必须使用格雷戈里-莱布尼茨级数计算 Pi 的值: pi = 4 * ((1/1 - 1/3) + (1/5 - 1/7) + (1/9 - 1/11) + ...) 我想用 JavaScript 编
我刚刚在读Game Engine Architecture by Jason Gregory S.212,当我偶然发现他分配对齐内存的代码时。我认为他正在产生内存损坏并使用以下代码自行尝试: void
我已经找到了“The Coder's Apprentice Learning Programming with Python 3”练习 8.3 的解决方案,它与作者的解决方案略有不同。我想在这里问一下
我是一名优秀的程序员,十分优秀!