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

分类: 计算机技术
推荐阅读:
C语言使用fork()系统调用创建子进程 有些时候,创建多个子进程可用于提高任务处理效率或提高程序的并发性;在Linux系统下可使用fork()系统调用创建一个新的子进程;
python ascii()函数详细教程 ascii()函数接受一个对象参数,返回该对象的字符串形式,如果返回的字符串中包含非ASCII编码的字符,会使用\x、\u和\U来进行转义;
一定有你不知道的Python技巧 Python一直以代码简洁著称;想写出艺术般的代码,需要你掌握各种Python技巧,这些技巧有些是语言特性,有些则是广大程序员的经验心得;今天作者就给大家网罗了一些Python技巧,一起来看看吧。
MySQL INTERVAL 时间间隔表达式 时间间隔表达式表示一个时间的间隔,通常用于时间的计算;语法如下:
Linux挂载一个临时的RAM分区 在Linux下,你可以将RAM当作文件系统使用,这比在Windows方便的多,使用RAM作为文件系统,其读写速度要比磁盘快得多;一条命令即可实现:挂载一个临时的RAM分区,分配指定大小的RAM空间来作为文件系统。
C语言中 i++ 和 ++i 的区别 在C语言中,++ 运算符也叫递增运算符,只需要一个操作数,属于一元运算符;本文将讨论前缀++运算符和后缀++运算符的区别,以及符号优先级的问题;