用python写一段蒙特卡洛模拟
下面是一个简单的蒙特卡洛模拟的Python代码示例,用于估算圆周率π的近似值:
import random
def monte_carlo_pi(num_points):
points_inside_circle = 0
total_points = 0
for _ in range(num_points):
x = random.uniform(0, 1)
y = random.uniform(0, 1)
distance = x**2 + y**2
if distance <= 1:
points_inside_circle += 1
total_points += 1
return 4 * points_inside_circle / total_points
num_points = 1000000
approx_pi = monte_carlo_pi(num_points)
print(f"Approximation of pi: {approx_pi}")
这段代码使用了随机数生成器来生成坐标点,然后计算点到原点的距离。如果距离小于等于1,则认为点在单位圆内,否则认为点在单位圆外。通过统计在圆内的点和总点数的比例,可以得到一个近似的圆周率π的值。
在上面的示例中,我们模拟了100万个点,并使用这些点的比例来计算近似的圆周率π的值。你可以根据需要调整num_points的值来增加或减少模拟的精度。
原文地址: https://www.cveoy.top/t/topic/iQcO 著作权归作者所有。请勿转载和采集!