蒙特卡洛方法应用

e的定义如下:

 



求解它有两种方法:
一是公式法,

取一个很大的数代入。

python代码如下:

1 x = 1024*1024
2 e = pow(1+1/x,x)
3 print("{}".format(e))

 


二是蒙特卡洛方法 (题目本身不难,重点的是这种思维模式)

 

 1 import random as rd
 2 
 3 scatterNum = 1024*1024 #撒点的总数
 4 count = 0
 5 
 6 for i in range(scatterNum):
 7     x = rd.uniform(1,2)
 8     y = rd.uniform(0,1)
 9     if x*y <= 1:
10         count+=1
11 e = pow(2,scatterNum/count)
12 print("自然常数e:{}".format(e))

 

转载于:https://www.cnblogs.com/zach0812/p/11271928.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值