python计算圆周率(蒙特卡洛法/模拟法、统计法/穷举法、BBP公式)

def calculatePI1():                                              #模拟统计法:蒙特卡罗方法计算圆周率
    import random as r                                           #导入random模块命名为r
    import math as m                                             #导入math模块命名为m
    import time as t                                             #导入time模块命名为t
    darts = int(input("Please input darts numbers:"))            #选择投掷次数,控制计算精度,darts越大越精确
    hits = 0                                                     #初始记投掷在圆内次数为0
    #t.clock()                                                   #调用time模块中的clock()函数,计时开始
    star_time = t.time()                                         #开始时间
    for i in range(darts):                                       #若要取1/4圆简化计算通过下行random()实现,取全圆计算则通过下下行uniform()实现
        #x,y=r.random(),r.random()                               #random()产生[0,1)之间的随机小数,则规定边长为1的正方形,内切圆圆心为(0.5,0.5)半径为0.5,坐标大小范围为(0,1)
        x, y = r.uniform(-1, 1), r.uniform(-1, 1)                #uniform(a,b)产生[a,b]之间的随机小数,则规定边长为2的正方形,则内切圆圆心为(0,0),半径为1,坐标大小范围为(-1,1)
     
  • 7
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值