所以我在math.se阅读这个问题,并决定运行一个循环来检查自己的答案。我知道证据是严格的,所以我从来没有真正怀疑过它,但是当你看到事情成功的时候它是很好的。显然,stackoverflow不支持LaTex,(考虑到这是一个编程站点,而不是数学),所以我发布了一个屏幕截图,以防万一链接崩溃或其他问题。Bug循环列表
现在,我写了这个代码模拟了上述表达,显然计算它,直到无穷是荒谬的,所以我决定做它,直到N = 999,似乎是合理的,我为我没有一个表达式收敛有多快的想法。对于没有数学背景的人,忽略lim
我试图计算n = 999的给定表达式。
>>>l=list(range(1,1000))
>>>from math import sqrt as s
>>>p=1
>>>while l:
a=l.pop()
a*=p
a+=1
a=s(a)
p=a
>>>p
2.0
我希望答案是3未2.另请注意,我不要求的方法来计算这个功能,我要求我的代码中的bug。你可能提供了我自己的功能,但这个问题的主要目的是找到我写的代码中的错误,这是我无法找到的。
无论你的代码是否有bug(似乎也是如此),1000次迭代可能是不够的。任何一台现代计算机都可以轻松处理100万个,而1亿个计算机将不会是一个延伸。另外,为什么要将范围设置为列表,只要在范围内完成一个列表即可。这会更有效率。 – Linuxios
@Linuxios我不认为问题太小n。它应该比这更快地收敛。它在这里收敛到2,部分得益于它出现在一个不错的2.0而不是一些小数。 – Guy
@Linuxios我会尝试检查更大的n虽然。 – Guy