even = np.arange(2,1000001,2) one_below_even = even - 1 one_above_even = even + 1 2 * np.prod(even/one_below_even)* np.prod(even/one_above_even)
请问我这个哪里错了呀 运行不出来
该回答引用GPTᴼᴾᴱᴺᴬᴵ
你的代码中缺少圆周率的计算部分,你需要在最后加上wells公式的计算公式:
pi = 2 * np.prod(even/one_below_even)* np.prod(even/one_above_even)
pi = 1/pi
完整代码如下:
import numpy as np
even = np.arange(2,1000001,2)
one_below_even = even - 1
one_above_even = even + 1
pi = 2 * np.prod(even/one_below_even)* np.prod(even/one_above_even)
pi = 1/pi
print(pi)
注意,使用这种方法计算圆周率会比其他更为精确的方法(如数值积分方法)慢很多。
不知道你这个问题是否已经解决, 如果还没有解决的话: