python生成器求π

from math import sqrt

def fun():
    a = sqrt(2) / 2
    b = sqrt(a * 2 + 2) / 2
    yield a
    yield b
    while True:
        a = b
        b = sqrt(a * 2 + 2) / 2
        yield b

N = int(input())
f = fun();
p = 1.0

for i in range(N + 1):
    p *= next(f)

print("%.6f" % (2.0 / p))
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 1024 设计师: 上身试试
应支付0元
点击重新获取
扫码支付

支付成功即可阅读