算派
#p = (1 - 1/3 + 1/5 - 1/7 + 1/9 - 1/11 + ......) * 4import sys
p = 1
t = int(input('请输入算到几分之一:'))
if t % 2 == 0:
print('输入错误!')
sys.exit()
elif t <= 0:
print('输入错误!')
sys.exit()
else:
pass
count = 0
for i in range(3, t+1, 2):
if count % 2 == 0:
p -= 1/i
count += 1
else:
p += 1/i
count += 1
p *= 4
print(p)
运行:
>>>
================== RESTART: /Users/zhangxiang/Documents/算派.py ==================
请输入算到几分之一:101
3.1611986129870506
>>> #3.1
================== RESTART: /Users/zhangxiang/Documents/算派.py ==================
请输入算到几分之一:1001
3.143588659585789
>>> #3.14
================== RESTART: /Users/zhangxiang/Documents/算派.py ==================
请输入算到几分之一:10001
3.1417926135957908
>>> #3.141
================== RESTART: /Users/zhangxiang/Documents/算派.py ==================
请输入算到几分之一:100001
3.141612653189785
>>> #3.141
================== RESTART: /Users/zhangxiang/Documents/算派.py ==================
请输入算到几分之一:1000001
3.1415946535856922
>>> #3.14159
================== RESTART: /Users/zhangxiang/Documents/算派.py ==================
请输入算到几分之一:10000001
3.1415928535897395
>>> #3.141592
================== RESTART: /Users/zhangxiang/Documents/算派.py ==================
请输入算到几分之一:100000001
3.1415926735902504
>>> #3.1415926 本帖最后由 jackz007 于 2022-10-7 20:17 编辑
x , f = 1.0 , -1
for b in range(3 , 100000000 , 2):
x , f = x + f / b , -f
print("PI = %.7f" % (x * 4))
运行实况:
D:\\Python>python pi.py
PI = 3.1415926
D:\\Python>
不过,脚本运行比较慢,得耐心等待约 3 分钟左右才能见到结果。 jackz007 发表于 2022-10-7 20:15
运行实况:
不过,脚本运行比较慢,得耐心等待约 3 分钟左右才能见到结果。
IDLE hveagle 发表于 2022-10-7 20:25
IDLE
有区别吗? jackz007 发表于 2022-10-7 20:28
有区别吗?
I don't know. Please go to Xiao Jia Yu
页:
[1]