如何使用python实现圆周率的计算(代码示例)

作者&投稿:并封 (若有异议请与网页底部的电邮联系)
~
本篇文章给大家带来的内容是关于如何使用python实现圆周率的计算(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
一、π的简介
π的介绍
圆周率用希腊字母 π(读作pài)表示,是一个常数(约等于3.141592654),是代表圆周长和直径的比值。它是一个即无限不循环小数,在日常生活中,通常都用3.14代表圆周率去进行近似计算。
π的求解历程
1965年,英国数学家约翰·沃利斯(John Wallis)出版了一本数学专著,其中他推导出一个公式,发现圆周率等于无穷个分数相乘的积。
2015年,罗切斯特大学的科学家们在氢原子能级的量子力学计算中发现了圆周率相同的公式。
2019年3月14日,谷歌宣布圆周率现已到小数点后31.4万亿位。
此处用一个自我感觉‘良好’的公式进行求解,说良好是因为计算结果相对准确,但计算过程用时较长,一起来学习吧~~
二、π的近似计算
1. 计算公式

2. 方法讲解
所用公式等式右边分子都为1,分母为递增数列,从第一项开始,奇数项符号为正,偶数项符号为负。等式右边的分母越大,越小,圆周率π计算的值越精确;换个角度讲,就是等式右边的项越多,计算的值越精确。
3. 代码实现(python)
from math import fabs #导入数学模块
from time import perf_counter #导入时间模块
def Bar(i): #动态文本条
N = pow(10,level)
a = int((i/N)*50)
b = 50 - a
Y , N = '*' * a , '.' * b
print("
计算中:{:3.0f}% [{}->{}] {:.2f}s"
.format(2*a,Y,N,perf_counter()),end='')

level = eval(input('计算Pi精确到小数点后几位数:'))
print('
{:=^70}'.format('计算开始'))
a,b,pi,tmp = 1,1,0,1
i = 0
'''
a 分子 | b 分母 | pi 圆周率
tmp 存储a/b的值 | i 执行进度
'''
perf_counter() #开始计时
while (fabs(tmp) >= pow(10,-level)): #计算Pi
pi += tmp
b += 2
a = -a
tmp = a/b
i += 2
Bar(i) #调用函数,实时显示计算进度
print('
{:=^70}'.format('计算完成'))
print('
Pi的计算值为:{}'.format(round(pi*4,level))) #输出计算结果4. 图片示例
由上面3张图片可知,精确到小数点后4位只要14.07秒,精确到小数点后6位也需要124.61秒,而精确到小数点后8位就需要 850 / 8% = 10625秒,约为 177 分钟,也就是2.95个小时。这种方法固然好,但计算起来还是需要很长一段时间的。
《圆周率π》是个奇妙而美丽的存在,它是个无限不循环小数,就像是一种缺陷美,只要你有发现美的眼睛!
2011年,国际数学协会正式宣布,将每年的3月14日设为国际数学节,来源则是中国古代数学家祖冲之的圆周率。


python如何使用
python是一种跨平台的计算机程序设计语言,使用python首先需要进行安装和配置,然后就可以在CMD命令行窗口中使用python了。安装:使用python之前我们需要先安装它,大家到python的官网下载即可,下载完了注意配置一下环境变量,将python的bin目录配置到path变量里面。使用:在CMD命令行窗口中使用python,一般比较小...

如何使用python 有需要的朋友快来看看
使用:然后我们就可以在CMD命令行窗口中使用python了,一般比较小的python程序直接在记事本中或者sublime这样的编辑器中编写即可如果是比较大的python项目的话就需要打开IDE工具Pycharm了。第三方的库:最后使用python的时候一般会用到第三方的库,这个一般都是安装在python安装目录下面的site-packages文件夹综...

Python怎么使用
1、首先在Window 上在安装 Python时,已经已经安装了默认的交互式编程客户端,提示窗口:在 python 提示符中输入以下文本信息,然后按 Enter 键查看运行效果。2、然后,通过脚本参数调用解释器开始执行脚本,直到脚本执行完毕。当脚本执行完成后,解释器不再有效。所有 Python 文件将以 .py 为扩展名。将以...

Python 是什么?如何正确使用?
如果您想正确使用 Python,可以参考以下步骤:1. 安装 Python。2. 学习 Python 基础语法。3. 学习 Python 标准库的使用。4. 练习编写 Python 程序。5. 参考 Python 相关书籍和教程,进一步提高自己的技能。

python是什么,如何使用python
1、Python都被用在哪儿?自Python由Guido van Rossum于1989年底发明创建以来,基于此项技术的网站和软件项目已经有了数千个。Python 由于其独特性,使其在各种编程语言中脱颖而出,在全世界拥有大量拥护它的程序员。Python 的优点是什么?简单、免费、兼容性、面向对象、 函数库在哪里使用 Python 语言?...

python怎么用
操作方法如下操作设备戴尔电脑 操作系统win10 操作软件design 1打开你的功能文件,如下图所示2把功能封装成函数然后按CTRL+V粘贴在Design里复制的代码,如下图所示3加入信号,链接到函数,如下图所示4;python整数的表示方法1可以使用字符串str的isdigit方法判断字符串是否是一个仅有数字组成,也就是整数...

安装python后怎么用
1、安装之后首先可以启动Python交互式解释器,方法是在Windows命令行窗口,敲入python字样就可以打开了,在这里可以导入python的包,编写python语句,不过缺点就是修改起来不方便,需要把光标移动到相应的位置才能:2、然后也可以使用Python自身提供的IDLE集成开发环境,这是Pyhton自身提供了一个简洁的集成开发环境...

python该如何使用?
1、要使用string的方法要先import,但后来由于众多的python使用者的建议。2、从python2.0开始, string方法改为用S.method()的形式调用,只要S是一个字符串对象就可以这样使用,而不用import。3、同时为了保持向后兼容,现在的Python中仍然保留了一个string的module。阐述编制Python程序相关注意什么是Python...

python 可以怎么使用
1.下载Python安装包。2.解压Python安装包。tar -xzf Python-2.7.3.tgz 3.在Python-2.7.3 根目录下运行。.\/configure configure 命令执行完之后,会生成一个 Makefile 文件,这个 Makefile主要是被下一步的 make 命令所使用。4.编译Python源代码并安装。make&&make install 5.安装完之后,执行...

使用Python可以做什么
1、使用Python进行通用应用程序编程您可以使用Python创建命令行和跨平台GUI应用程序,并将它们部署为自包含的可执行文件。虽然Python不具有从脚本生成独立二进制文件的本机能力,但是可以使用诸如cx_Freeze和PyInstaller之类的第三方包来实现这一点。2、使用Python进行数据科学和机器学习复杂的数据分析已经成为其中...

河间市17887806981: 现代计算机是如何计算圆周率的? -
仇由旭长春: 可以用编程语言计算.以下是python语言 pi = 0.0 N = 100 for i in range(N): pi += (1/pow(16,i) * ( 4/(8*i +1) -2/(8*i+4)-1/(8*i+5) -1/(8*i +6) ) ) print('圆周率为{:.10f}'.format(pi)) 请把以上代码拷进python语言开发环境里运行,结果如下(下图是...

河间市17887806981: python用随机数计算圆周率PI 怎么做? 韩国学校作业 -
仇由旭长春: 蒙特卡罗法计算圆周率(就是往一个正方形里丢石子).from __future__ import division import random import time for j in range(2, 8): startT = time.clock() counter = 0 for i in range(10 ** j): x = random.uniform(-1, 1) y = random.uniform(-1, 1) if x**2 ...

河间市17887806981: 如何 用 matplotlib 绘制 PYTHON 随机数 求 圆周率 函数图.. Y 轴 为 π值 X 轴 为 投石次数 -
仇由旭长春: import random import matplotlib.pyplot as plt def getpi( zongshu ): mingzhong = 0.0 for i in range(zongshu): x = random.random() y = random.random() if ( x**2 + y**2 ) mingzhong += 1 return ( mingzhong/zongshu*4.0 ) xx = [ 100*(i+1) for i in range(...

河间市17887806981: 5、编一个程序,用的do while(while、for)循环语句来计算PI=4*(1 - 1/3+1/5+...+1/n),要求当n>1000时停止计 -
仇由旭长春: #include"stdio.h" #include"math.h"main() {int n=1; float term=1.0,sign=1,sum=0;while(n<1000){term=sign/n;sum+=term;sign=-sign;n+=2;}sum=4*sum;printf("%f\n",sum); }#include"stdio.h" #include"math.h"main() {int n...

河间市17887806981: ipython 用随机数求圆周率 最好把求的过程照下来 -
仇由旭长春: 我给出一个解法.用不到ipython.只要是python就能用.from random import * from math import sqrt inside=0 n=10000 for i in range(0,n): x=random() y=random() if sqrt(x*x+y*y)<=1: inside+=1 pi=4.0*float(inside)/float(n) print pi

河间市17887806981: python写的计算圆周率的程序,如图,设置跳出循环条件为9999就有结果返回,99999就没有 -
仇由旭长春: python的浮点数是double型的.64位.可能不足够用.

河间市17887806981: 3、一个输入文件正常应包含1~300条记录,设计测试用例时可以设计...
仇由旭长春: 如果你的电脑里有python环境(没有可以官网装一个) 一个简单的py小程序可以计算圆周率,DARTS值越大,程序运行时间越长,圆周率越精准from random import * from math import * from time import *DARTS = 2**12 hits = 0 clock() for i in ...

河间市17887806981: 一道求圆周率的python题 -
仇由旭长春: print(sum(6/_**2 for _ in range(1,int(eval(input()))+1))**0.5) 输入100000,输出3.1415831043264366 输入1000000,输出3.141591698660415

河间市17887806981: 已知圆的面积计算公式为c=p*r*r ,其中p为圆周率(3.14)r为半径,请用python自 -
仇由旭长春: 人所共知π值3.1415926·······本是正6x2ⁿ边率,并非圆周率.圆周率是圆的周长与直径的比为6+2√3:3.你拿正6x2ⁿ边形的周长与过中心点的对角线的比值,硬说成是圆周率的值,吻合么?人们只看见人玩手机,却忽略了手机也能玩人.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网