用莱布尼茨公式求圆周率π
莱布尼茨公式:π/4=1-1/3+1/5-1/7+1/9-1/11+……
python代码:
pi=1
num=1
for times in range(10000):
num=num+2
pi=pi-1/num
num=num+2
pi=pi+1/num
print("{0:.30f}".format(pi*4))
————————————————————
用马青法求圆周率π
马青公式:π = 16 arctan(1/5) - 4 arctan(1/239)
python代码:
import time
time1=time.time()
number = int(input('请输入想要计算到小数点后的位数n:'))
number1 = number+10
b = 10**number1
x1 = b*4//5
x2 = b// -239
he = x1+x2
number *= 2
for i in range(3,number,2):
x1 //= -25
x2 //= -57121
x = (x1+x2) // i
he += x
pi = he*4
pi //= 10**10
paistring=str(pi)
result=paistring[0]+str('.')+paistring[1:len(paistring)]
print(result)
time2=time.time()
print ('总共耗时:' + str(time2 - time1) + 's')