龙空技术网

趣味代码 - Python 蒙特卡洛方法求解圆周率

每日开源代码 332

前言:

目前朋友们对“如何用python输出π的值”大体比较关注,姐妹们都需要了解一些“如何用python输出π的值”的相关知识。那么小编在网络上搜集了一些关于“如何用python输出π的值””的相关知识,希望同学们能喜欢,朋友们一起来学习一下吧!

蒙特卡洛方法,是二十世纪四十年代被提出的一种以概率统计理论为指导的的数值计算方法,通过使用随机模拟实验解决很多难以通过确定算法计算的问题的方法。

1777年,法国数学家布丰提出用投针实验的方法求圆周率 π,这被认为是蒙特卡罗方法的起源。后来,数学家冯·诺伊曼用摩纳哥的 Monte Carlo 命名这种概率计算方法。

圆周率(Pi)是圆的周长与直径的比值,一般用希腊字母 π 表示,是一个在数学及物理学中普遍存在的数学常数。π也等于圆形之面积与半径平方之比,是精确计算圆周长、圆面积、球体积等几何形状的关键值。圆周率它是一个无限不循环小数,约等于3.141592653。

通过对直角坐标系第一象限的一个正方形进行随机投点,并统计在四分之一圆内的点数所占的比例,来模拟计算圆周率。

from random import randomdots = 1000 * 1000hits = 0for _ in range(dots):    x, y = random(), random()    d = pow(x*x + y*y, 0.5)    if d < 1:        hits += 1pi = 4 * (hits / dots)print(pi)

运行代码,输出:3.14972,与圆周率准确数值相近。由于为随机算法,每次运行数值都不相同。另外,点数取得越多,数值越精确。

标签: #如何用python输出π的值