Python计算圆周率,精确到n位

本文将使用Python计算圆周率,可精确到n位,n值越大精度越高。

示例代码:

n = int(input('请键入想要计算到小数点后的位数n:')) #先键入字符串,再转化为整数
w = n+10 #多计算10位,防止尾数取舍的影响
b=10**w
x1 = b*4//5 #求含4/5的首项
x2 = b// -239 #求含1/239的首项
he = x1+x2 #求第一大项
n *= 2 #设置下面循环的终点,即共计算n项
for i in range(3,n,2):
    #循环初值=3,末值2n,步长=2
    x1 //= -25 #求每个含1/5的项及符号
    x2 //= -57121
    #求每个含1/239的项及符号
    x = (x1+x2) // i
    #求两项之和
    he += x
    #求总和
    pi = he*4
    #求出π pi //= 10**10
    #舍掉后十位
print(pi)

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/p/python-pi.html

分类: 计算机技术
推荐阅读:
PySide6 事件详细教程 在PySide6中,事件是GUI应用程序中用户交互和其它系统事件的基本构成块;PySide6中的事件允许您捕获和处理各种类型的事件,从而实现对用户界面的交互和响应;
Kali更新源的方法和优质国内源 所谓的Kali源,你可以将它理解为软件仓库,系统通过它安装和更新软件;源的服务器地址写在/etc/apt/sources.list文件中;当系统使用的当前源不可用或速度不理想时,就需要更换源;
Golang实现base64加密解密 Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。
PyQt:QLabel在Python里的详细用法 本文将介绍PyQt5中的QLabel部件在Python下的详细用法;并介绍了一些QLabel部件常用的属性和方法,以及信号、槽的使用;
Rust的第一个传统Hello World程序 本页将向你展示Rust的第一个传统程序;你将学会如何给程序添加注释、格式化打印文本信息,以及将Rust源码编译成可执行程序;
Python使用webbrowser模块来实现弹出一个网页 如果你希望在别人运行你的程序时弹出一个指向自己网站的页面,你可以通过以下代码来实现: