weixuan -文件华而不实

def pi(n):
    p = 10 ** (n + 10)  # 准备初始整数,先多乘 k 个 0,以增加精度,最后再去掉,这里我取 k=10
    a = p * 16 // 5     # 第一项的前半部分
    b = p * 4 // -239   # 第一项的后半部分
    f = a + b           # 第一项的值
    p = f               # π
    j = 3
    while abs(f):       # 当|f|=0后计算π的值就不会再改变了
        a //= -25       # 第n项的前半部分
        b //= -57121    # 第n项的后半部分
        f = (a + b) // j
        p += f
        j += 2
    return p // 10**10  # 去掉 k 位,k=10

import time
t1=time.time()

num = pi(100001)
t2=time.time()
print(t2-t1)

# 数字转字符串
num=str(num)
print(num.find("20080301"))

s=open('alg.txt',"w")
s.write(num)
s.close()


# open 打开  write 写字  read 读取
# s = open("yzl.txt",'w')
# s.write("1234567")
# s.close()

s = open("yzl.txt",'r')
num = s.read()
print(num)
s.close()

猜你喜欢

转载自blog.csdn.net/houlaos/article/details/106730740