Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/EmptyTag/135.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何用math.pi计算Gregory级数及其误差_Python_Pi - Fatal编程技术网

Python 如何用math.pi计算Gregory级数及其误差

Python 如何用math.pi计算Gregory级数及其误差,python,pi,Python,Pi,我需要代码方面的帮助。我想写一个代码,可以计算“math.pi和pi使用Gregory级数”的错误。误差范围为1.0E-1~1.0E-8。这是我的密码: import math EPSILON=0.1 def ans(terms): result=0.0 for n in range(terms): result+=(-1.0)**n/(2.0*n+1.0) return 4*result if abs(pi-ans)<=EPSILON:

我需要代码方面的帮助。我想写一个代码,可以计算“math.pi和pi使用Gregory级数”的错误。误差范围为
1.0E-1~1.0E-8
。这是我的密码:

import math
EPSILON=0.1
def ans(terms):
    result=0.0
    for n in range(terms):
        result+=(-1.0)**n/(2.0*n+1.0)
    return 4*result
    if abs(pi-ans)<=EPSILON:
        print n,ans,abs(pi-ans)
    else:
        print("out of different")
导入数学
ε=0.1
def ans(条款):
结果=0.0
对于范围内的n(术语):
结果+=(-1.0)**n/(2.0*n+1.0)
返回4*结果

如果abs(pi-ans)>>3.1249271439289967
,但我无法获得打印n,ans,abs(pi-ans)的输出,我的代码有什么问题?

这是因为打印语句缩进,这使它们成为
ans()
函数的一部分。 您的代码还有其他几个错误

  • 不能只使用
    pi
    ,而应该使用
    math.pi
  • 在print语句中调用
    ans
    ,而不使用参数
您的代码应该如下所示:

import math
EPSILON=0.1
def ans(terms):
    result=0.0
    for n in range(terms):
        result+=(-1.0)**n/(2.0*n+1.0)

    return 4*result

n = 60
res = ans(n)
if abs(math.pi-res) <= EPSILON:
    print n,res,abs(math.pi-res)
else:
    print("out of different")
导入数学
ε=0.1
def ans(条款):
结果=0.0
对于范围内的n(术语):
结果+=(-1.0)**n/(2.0*n+1.0)
返回4*结果
n=60
res=ans(n)

如果abs(math.pi res)感谢您的回答,非常感谢。