python利用公式计算π的方法:首先导入数学模块及时间模块;然后计算Pi精确到小数点后几位数,代码为【print('n{:=^70}'.format('计算开始'))】;最后完成计算,代码为【print('n{:=^70}'】。

【相关学习推荐:python教程】

python利用公式计算π的方法:

一、π的简介

π的介绍

圆周率用希腊字母 π(读作pài)表示,是一个常数(约等于3.141592654),是代表圆周长和直径的比值。它是一个即无限不循环小数,在日常生活中,通常都用3.14代表圆周率去进行近似计算。

π的求解历程

1965年,英国数学家约翰·沃利斯(John Wallis)出版了一本数学专著,其中他推导出一个公式,发现圆周率等于无穷个分数相乘的积。

2015年,罗切斯特大学的科学家们在氢原子能级的量子力学计算中发现了圆周率相同的公式。

2019年3月14日,谷歌宣布圆周率现已到小数点后31.4万亿位。

此处用一个自我感觉‘良好’的公式进行求解,说良好是因为计算结果相对准确,但计算过程用时较长,一起来学习吧~~~

二、π的近似计算

1. 计算公式

2. 方法讲解

所用公式等式右边分子都为1,分母为递增数列,从第一项开始,奇数项符号为正,偶数项符号为负。等式右边的分母越大,越小,圆周率π计算的值越精确;换个角度讲,就是等式右边的项越多,计算的值越精确。

3. 代码实现(python)

1 from math import fabs #导入数学模块 2 from time import perf_counter #导入时间模块 3 4 def Bar(i): #动态文本条 5 N = pow(10,level) 6 a = int((i/N)*50) 7 b = 50 - a 8 Y , N = '*' * a , '.' * b 9 print("r计算中:{:3.0f}% [{}->{}] {:.2f}s" 10 .format(2*a,Y,N,perf_counter()),end='') 11 12 level = eval(input('计算Pi精确到小数点后几位数:')) 13 print('n{:=^70}'.format('计算开始')) 14 a,b,pi,tmp = 1,1,0,1 15 i = 0 16 ''' 17 a 分子 | b 分母 | pi 圆周率 18 tmp 存储a/b的值 | i 执行进度 19 ''' 20 perf_counter() #开始计时 21 while (fabs(tmp) >= pow(10,-level)): #计算Pi 22 pi += tmp 23 b += 2 24 a = -a 25 tmp = a/b 26 i += 2 27 Bar(i) #调用函数,实时显示计算进度 28 29 print('n{:=^70}'.format('计算完成')) 30 print('nPi的计算值为:{}'.format(round(pi*4,level))) #输出计算结果

4. 图片示例

由上面3张图片可知,精确到小数点后4位只要14.07秒,精确到小数点后6位也需要124.61秒,而精确到小数点后8位就需要 850 / 8% = 10625秒,约为 177 分钟,也就是2.95个小时。这种方法固然好,但计算起来还是需要很长一段时间的。

python利用近似公式计算π_python如何利用公式计算π相关推荐

  1. python多项分式求和计算_python实现利用留数定理分解分式多项式

    编写之初 由于利用留数定理分解分式多项式的计算麻烦,所以决定用python做一个利用留数定理分解分式多项式程序,实现只要输入多项式就可以得到各种中间参数和最终拆分结果的目的.从本程序可以得到:分解后每 ...

  2. python编程工时计算_Python小项目——工时计算

    项目二:工作量计算器 要求 要求 分析过程 已知信息:标准的项目,需要1个人用80工时完成(1个人做10天) 计算方式1:工时计算 输入:项目大小(浮点型,代表标准大小的倍数).人数(整数) 输出:工 ...

  3. 条件概率的几何解释 由定义计算条件概率 由条件概率公式计算条件概率

    A发生,则去掉圈A以外的区域,形成新的样本空间 (如果是概率质量函数,则称为归一化)然后在A发生的前提下,B的概率为 圈A与圈B的公共区域/圈A 这就是条件概率的几何解释~~~ 甲乙两人各抛一个骰子, ...

  4. python dlib人脸检测_Python 3 利用 Dlib 实现人脸检测和剪切

    0. 引言 利用 Python 开发,借助 Dlib 库进行人脸检测 / face detection 和剪切: 将检测到的人脸剪切下来,依次排序平铺显示在新的图像上: 实现的效果如 图1 所示,将 ...

  5. python实现面部特效_Python 3 利用 Dlib 实现摄像头实时人脸检测和平铺显示

    1. 引言 在某些场景下,我们不仅需要进行实时人脸检测追踪,还要进行再加工:这里进行摄像头实时人脸检测,并对于实时检测的人脸进行初步提取: 单个/多个人脸检测,并依次在摄像头窗口,实时平铺显示检测到的 ...

  6. python短期预测图_Python中利用长短期记忆模型LSTM进行时间序列预测分析

    原文链接:http://tecdat.cn/?p=6663 此示例中,神经网络用于使用2011年4月至2013年2月期间的数据预测都柏林市议会公民办公室的能源消耗. 每日数据是通过总计每天提供的15分 ...

  7. python辗转相除法求最小公倍数_Python实现利用最大公约数求三个正整数的最小公倍数示例...

    Python实现利用最大公约数求三个正整数的最小公倍数示例 本文实例讲述了Python实现利用最大公约数求三个正整数的最小公倍数.分享给大家供大家参考,具体如下: 在求解两个数的小公倍数的方法时,假设 ...

  8. python海龟绘图颜色_python中利用turtle(海龟)绘图制作龟兔赛跑动画——仅供学习...

    python中利用turtle(海龟)绘图制作龟兔赛跑动画--仅供学习哦 首先,欢迎大家来我的博客当中浏览,由于我和我的可爱现在还都个初学者,所作的东西还不够完善,之前在学习计算机的各种语言的过程中, ...

  9. python pygame小游戏_python:利用pygame实现消消乐小游戏

    消消乐记分小游戏GUI界面 文件结构规划 定义config.py文件存储相关参数:包括界面的宽高,整个方格行列个数,总格数等等. 定义utils.py文件用于存放基础的类和函数:包括整个消除拼图类,游 ...

最新文章

  1. JD AWS vue上传文件
  2. HDU 5727 Necklace
  3. CF1550E Stringforces
  4. matlab 三维核密度图_Matlab精彩画图示例:三维网状图和三维曲面图
  5. resultMap与resultType、parameterMap与 parameterType的区别
  6. RHEL 8 - 记录用户会话操作
  7. 深入探究Java中hashCode()和equals()的关系
  8. java ascii码转字符_一文让你读懂JAVA.IO、字符编码、
  9. Servlet的request.getRemoteAddr()方法回去地址是0:0:0:0:0:0:0:1
  10. vue修改数组元素方法
  11. QQ音频文件服务器,unlock-music:支持解密网易云/QQ音乐的加密文件和ID3信息补全...
  12. 24点自动出题,可打印,A4排版
  13. au计算机内录音乐,win10 audition怎么内录_win10 audition如何录制声音
  14. 操作系统---IO设备
  15. php安全上传图片,PHP安全上传图片的方法
  16. zblog模板 php,卢松松博客模板zblogphp版 适合seo功能强大(已支持1.6)
  17. BH1750光照传感器
  18. 阶段三 JavaScript网页编程---js基础语法
  19. 英国全能数学家John Conway因新冠去世,他曾发明风靡一个时代的电脑游戏,还能心算万年历...
  20. 【05】制作鸿蒙版蜻蜓短视频系统-事件原理及完成点击,长按,双击等操作实现跳转-优雅草伊凡

热门文章

  1. 市场调研策划书_市场调查计划书范文
  2. 怎么获取网易云歌单外链链接
  3. Tensorflow2.*教程之使用Tensorflow Hub 对IMDB电影评论数据集进行文本分类(2)
  4. 强化学习初探索——Q-table 举例,附可执行Python代码
  5. win10系统可禁用的服务器,window10哪些服务可以禁止
  6. pwnable.kr---blackjack
  7. DG232RL与FT232RL/GP232RL兼容开发资料
  8. HTML5期末大作业:手表商城网站设计——手表商城网站模板源码(17页) web期末作业设计网页_手表商城网页设计作业成品
  9. c语言程序结构设计的心得,写给新手 选择结构程序设计总结
  10. 多彩绚丽渐变Mac动态壁纸