Python计算圆周率

简介: Python计算圆周率

1问题

如何用python计算出圆周率.


2方法

  1. 公式法
  2. 蒙特卡罗方法,也称统计模拟法

计算抛点总数N,计算在圆的内部的点的总数k,圆周率=4*k/N

代码清单 1

方法一:
pi=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(pi)
方法二:
import random
N=1000*1000
k=0
for i in range(N):
   x,y=random.random(),random.random()
   dist=pow(x**2+y**2,0.5)
   if dist<=1.0:
       k+=1
pi=4*(k/N)
print(pi)

3结语

针对计算圆周率问题,使用for循环和条件语句等方法,通过实验证明该方法是有效的,本实验使用的蒙特卡罗方法计算出的圆周率数值存在偏差;计算量大,且随准确性提高速度会变慢,未来可以继续研究其他速度更快,准确性更高的计算方法。


目录
相关文章
|
19天前
|
Python
python幂运算——计算x的y次方
python幂运算——计算x的y次方
27 0
|
2月前
|
算法 索引 Python
使用Python实现PageRank计算
使用Python实现PageRank计算
|
1天前
|
Python
python计算线段角度
python计算线段角度
2 0
|
8天前
|
安全 数据安全/隐私保护 Python
Python的整型在计算中具有以下优势
【5月更文挑战第6天】Python整型提供任意精度整数计算,无溢出风险;支持多种算术运算,操作简便;作为不可变类型保证数据安全;能进行高级数学运算,并有NumPy等库加持,适合数值分析和科学计算。
19 0
|
8天前
|
Python
Python的整型在计算中的精度可以通过使用二进制或十进制表示来体现
【5月更文挑战第6天】Python整型支持十、二、八、十六进制表示,其中十进制默认,二进制(0b前缀)、八进制(0o前缀)、十六进制(0x前缀)。计算时以二进制精度处理,确保结果准确。例如:123的二进制是0b1111011,八进制是0o173,十六进制是0x7b。
13 0
|
19天前
|
Python
Python计算股票投资组合的风险价值(VaR)
Python计算股票投资组合的风险价值(VaR)
|
21天前
|
数据可视化 Python
【视频】风险价值VaR原理与Python蒙特卡罗Monte Carlo模拟计算投资组合实例
【视频】风险价值VaR原理与Python蒙特卡罗Monte Carlo模拟计算投资组合实例
|
27天前
|
Python Serverless API
Python风险价值计算投资组合VaR、期望损失ES
Python风险价值计算投资组合VaR、期望损失ES
Python风险价值计算投资组合VaR、期望损失ES
|
27天前
|
数据可视化 Python
PYTHON贝叶斯推断计算:用BETA先验分布推断概率和可视化案例
PYTHON贝叶斯推断计算:用BETA先验分布推断概率和可视化案例
|
27天前
|
数据可视化 Python
Python蒙特卡罗(Monte Carlo)模拟计算投资组合的风险价值(VaR)
Python蒙特卡罗(Monte Carlo)模拟计算投资组合的风险价值(VaR)