关于#python#的问题:分母分子都需要循环,不太明白循环怎么去套用

img


分母分子都需要循环,不太明白循环怎么去套用,如何判断最后一项是否<阈值,以及分母如何设置为从3开始到2n+1结束,有思路,但不会写

分开来写,用两个循环,一个求分子,一个求分母。
代码如下

import math
pi_2 = 1.
pi = pi_2 * 2.  
value = float(input())
n = 1

def k(s) :
    tur = 1
    for i in range(3,2*s+2,2):
        tur *= i
    return tur

while 1==1 :
    numerator = math.factorial(n)
    denominator = k(n)
    pi_2 += (numerator / denominator  )
    if( (float(numerator) / float(denominator)) < value ):
        break
    n+=1
pi =pi_2 * 2
print('%.6f' % pi)