美文网首页
3月14日 Pi Day 找寻圆周率的奥秘

3月14日 Pi Day 找寻圆周率的奥秘

作者: Python_Camp | 来源:发表于2022-03-17 15:28 被阅读0次

    正方形的格子内,均匀地播撒沙子,例如10000颗沙子均匀铺满后,以一个顶点为圆心,以正方形边长为半径,则画出一个四分之一的圆如下

    image.png

    统计四分之一圆内的沙子数量,就可以推导出圆周率pi

    增加沙子的数量到50000会是怎样?
    先看代码

    
    import matplotlib.pyplot as plt
    import random
    targ = []
    in_circle = 0
    xs, ys , ins = [],[],[]
    for i in range(40000):
        x = random.random()
        y = random.random()
        radius = (x**2 + y**2) **.5
        if radius <= 1:
            in_circle += 1
            ins.append(1)
        else:
            ins.append(0)
        xs.append(x)
        ys.append(y)
        targ.append(4*in_circle/len(xs))
        
    fig, axs = plt.subplots(ncols=2,figsize = (8,4))
    axs[0].scatter(xs,ys,alpha=.01,c=ins)
    axs[1].plot(targ)
    axs[1].set_ylim(3.12, 3.18)
    
    image.png

    四分之一圆颜色更加丰满,圆周率的统计值经过上下起伏幅度大,逐渐收敛到3.14附近

    相关文章

      网友评论

          本文标题:3月14日 Pi Day 找寻圆周率的奥秘

          本文链接:https://www.haomeiwen.com/subject/dobvdrtx.html