蒙特·卡罗方法是一种通过概率来得到问题近似解的方法,在很多领域都有重要的应用,其中就包括圆周率近似值的计问题。

假设有一块边长为2的正方形木板,上面画一个单位圆,然后随意往木板上扔飞镖,落点坐标(x,y)必然在木板上(更多的时候是落在单位圆内),

如果扔的次数足够多,那么落在单位圆内的次数除以总次数再乘以4,这个数字会无限逼近圆周率的值。

这就是蒙特·卡罗发明的用于计算圆周率近似值的方法。

编写程序,模拟蒙特·卡罗计算圆周率近似值的方法,输入掷飞镖次数,然后输出圆周率近似值。

import random,math

s = 1 * 1

c = int(input())

hit = c

hits = 0

while hit != 0 :

hit = hit - 1

x = random.random()

y = random.random()

z = math.sqrt(x**2+y**2)

if z <= 1:

hits = hits + 1

PI = 4 * hits/c

print(PI)

这段程序主要运用通过计算落点的坐标与原点的距离来确定镖是否在中在圆内

当运行的次数足够大,也就会越来越逼近圆周率

另外再说一点就是python中的random()函数

random()函数的调用方法如下

import random

x = random.random()

返回的值在(0,1]之间

python模拟websocket握手过程中计算sec-websocket-accept

背景 以前,很多网站使用轮询实现推送技术.轮询是在特定的的时间间隔(比如1秒),由浏览器对服务器发出HTTP request,然后由服务器返回最新的数据给浏览器.轮询的缺点很明显,浏览器需要不断的向服 ...

Python入门习题5&period;蒙特卡罗方法计算圆周率

#CalPi.py from random import random from math import sqrt from time import clock DARTS = 10000000 hi ...

if,for,异常,random模块,计算圆周率

一.分支结构 单分支结构 if 一般用于判断选择 score = 95 if score > 90: print('优秀') 双分支结构 if...else age = 20 if age &g ...

蒙特&&num;183&semi;卡罗算法的Python实现

一 背景 此算法诞生的背景是: 曼哈顿计划,有极大的计算需求. 计算机刚开始发展,最适合做计算. 蒙特卡洛算法理论基础是概率论,实际就是暴力计算逼近理想结果.正是在以上两个背景下,它刚好得到了极大的应 ...

用python计算圆周率Π

一.要求: 1.计算到圆周率后面越多位越好. 2.用进度条显示计算的进度. 3.要求给出圆周率Π的具体计算方法和解释. 二.算法: 1.拉马努金公式: 2.高斯-勒让德公式: 设置初始值: 反复执行以 ...

Python实现计算圆周率π的值到任意位的方法示例

Python实现计算圆周率π的值到任意位的方法示例 本文实例讲述了Python实现计算圆周率π的值到任意位的方法.分享给大家供大家参考,具体如下: 一.需求分析 输入想要计算到小数点后的位数,计算圆周 ...

Python模拟登陆万能法-微博&vert;知乎

Python模拟登陆让不少人伤透脑筋,今天奉上一种万能登陆方法.你无须精通HTML,甚至也无须精通Python,但却能让你成功的进行模拟登陆.本文讲的是登陆所有网站的一种方法,并不局限于微博与知乎,仅 ...

用python计算圆周率PI

1.蒙特卡洛求圆周率 向区域内随即撒点 当点的数目足够多时,落在圆的点数目与在正方形点数目成正比 即圆的面积和正方形的面积成正比 可以得出计算圆周率的算法 DARTS=100000000   hits ...

Monte Carlo Method&lpar;蒙特&&num;183&semi;卡罗方法&rpar;

0-故事: 蒙特卡罗方法是计算模拟的基础,其名字来源于世界著名的赌城——摩纳哥的蒙特卡罗. 蒙特卡罗一词来源于意大利语,是为了纪念王子摩纳哥查理三世.蒙特卡罗(MonteCarlo)虽然是个赌城,但很 ...

随机推荐

position&amp&semi;containing block

一.包含块(Containing Block) 要讲position,首先就涉及到一个概念:包含块. 1.包含块介绍 包含块简单理解就是一个定位参考块,就是"大盒子里套小盒子"中那 ...

时间日期----java

Date类 在JDK1.0中,Date类是唯一的一个代表时间的类,但是由于Date类不便于实现国际化,所以从JDK1.1版本开始,推荐使用Calendar类进行时间和日期处理.这里简单介绍一下Date ...

二分查找C&plus;&plus;

#include using namespace std; //二分查找:每次都从中间位置寻找,如果找到了就返回,如果没找到, //则分两种情况: //(1)中间元素 ...

c&num; 无法引用自己创建的类库

今个测试一个项目,居然无法引用自己创建的类库,我很费解,然后各种测试,修改修饰符,更改强类型,各种测试,最后无聊点开类库的属性  发现居然需要引用的项目与被引用的类库的框架不一样,修改了之后就可以正常 ...

libIconv&period;lib编码库的生成和使用

iconv是将一种编码格式转换为另一种编码格式的开源库,例如可以把Windows环境下通用的ASCii(中文是GB2312)编码转换为国际通用的Unicode编码 iconv最新版本只支持MingW和 ...

快速学习javascript对象-遍历对象

为了方便了解每个javascript对象包含的方法,我写一个函数. function GetCollection(obj){ try{ if(obj){ var sType=""; ...

android权限(permission)大全

权限添加位置: 权限代码: 1.android.permission.WRITE_USER_DICTIONARY允许应用程序向用户词典中写入新词 2.android.permission.WRITE_ ...

ThreadLocal是否会导致内存泄露

什么是内存泄露? 维基百科的定义:[内存泄漏指由于疏忽或错误造成程序未能释放已经不再使用的内存],我的理解就是程序失去了对某段内存的控制,那么这段内存就算是泄露了. ThreadLocal为什么会导致 ...

Selenium库

'''自动化测试工具,支持多种浏览器.爬虫中主要用来解决JavaScrip渲染的问题.''''''基本使用'''from selenium import webdriverfrom selenium. ...

python计算圆周率_python模拟蒙特·卡罗法计算圆周率相关推荐

  1. Python---利用蒙特.卡罗方法计算圆周率近似值

    利用蒙特.卡罗方法计算圆周率近似值 什么是蒙特.卡罗方法? 答:蒙特卡罗方法是一种计算方法.原理是通过大量随机样本,去了解一个系统,进而得到所要计算的值. 正方形内部有一个相切的圆,它们的面积之比是π ...

  2. 蒙特.卡罗方法求解圆周率近似值原理与Python实现

    对于某些不能精确求解的问题,蒙特.卡罗方法是一种非常巧妙的寻找近似解的方法. 以求解圆周率的问题为例,假设有一个单位圆及其外切正方形,我们往正方形内扔飞镖,当扔的次数足够多以后,"落在圆内的 ...

  3. python语言程序设计——蒙特·卡罗方法求圆周率

    虽然在python的math库中存在着圆周率的表示,但是在实际生活中又有谁可以完整的背出圆周率呢,圆周率又是怎样被计算出来的呢? 首先数学家们发现了圆周率的近似方程如下: 而这段代码自然可以用计算机中 ...

  4. python计算选手最后得分_Python模拟决赛现场最终得分计算过程

    代码执行过程:首先输入评委人数,然后依次输入每个评委给出的得分,接下来分别去掉最高分和最低分,最终给出平均分.在输入过程中使用异常处理结构保证评委人数和每个评委给出的分数都必须是数字并且在合理范围之内 ...

  5. python 区块链_Python 模拟简单区块链

    另外还要说明一下,暑假指导老师让我们做一些关于区块链的应用.这里只是涉及极其简单的模拟,主要是记录这些天自己学习的知识. 什么是区块链? 下面简单说一下区块链是什么,做个比喻,区块就像一个人,区块链好 ...

  6. python爬虫数据挖掘_Python网页爬虫文本处理科学计算机器学习数据挖掘兵器谱...

    转载自"我爱自然语言处理":http://www.52nlp.cn,已获得授权.更多内容可见公众号:"牛衣古柳"(ID:Deserts-X). 周末时看到这篇不 ...

  7. python刷新页面_Python模拟浏览器爬取天猫信息

    由于工作需要,需要提取到天猫400个指定商品页面中指定的信息,于是有了这个爬虫.这是一个使用 selenium 爬取天猫商品信息的爬虫,虽然功能单一,但是也算是 selenium 爬虫的基本用法了. ...

  8. python模型预测_python:目标检测模型预测准确度计算方式(基于IoU)

    训练完目标检测模型之后,需要评价其性能,在不同的阈值下的准确度是多少,有没有漏检,在这里基于IoU(Intersection over Union)来计算. 希望能提供一些思路,如果觉得有用欢迎赞我表 ...

  9. guido python正式发布年份_Python语言适合哪些领域的计算问题? (1.3分)_学小易找答案...

    [单选题]关于Python中的复数,下列说法错误的是 (1.3分) [多选题]药物作用的基本规律包括? [单选题]Python 中,以下哪个赋值操作符是错误的? (1.3分) [单选题]哪个选项是下面 ...

最新文章

  1. JVM——Java虚拟机架构
  2. Fsharp 类中的空字段
  3. lgg7深度详细参数_深度学习平均场理论第七讲:Batch Normalization会导致梯度爆炸?...
  4. c++两个vector合并_这才是真正的 Git——分支合并
  5. python语言用什么来表明每行代码的层次关系_2021年尔雅通识课《切削原理与刀具》课后习题答案...
  6. alibaba实习生代码大赛
  7. nutwk的maven中央仓库及配置
  8. 微信悄悄更新:朋友圈不喜欢的评论可以删除了
  9. Vim 激荡 30 年发展史
  10. Java的String/byte[]/16进制相互转换
  11. java day22【网络编程】
  12. html5中drag//drop拖曳效果的用法
  13. matlab中阶跃函数算卷积,与冲激函数、阶跃函数的卷积.ppt
  14. ANSYS Electronics Desktop 19.2电机仿真思路
  15. 【js获取当天时间0点和23点59分59秒】
  16. (R,线性回归)R语言里的模型诊断图(Residuals vs Fitted,Normal QQ , Scale-Location ,Residuals Leverage)
  17. 软考高级系统架构师是什么来头?考上了就能当架构师了吗
  18. 本科计算机 出国可以学营养学吗,美国营养学专业哪些大学比较好 十所美国营养...
  19. 基于遗传算法的BP神经网络齿轮箱故障诊断实例
  20. Computer Organization and Architecture 10th - William Stallings

热门文章

  1. 使用了可能未初始化的本地指针变量“xxx”
  2. dom4j 学习 -- 封装dom4j工具类+如何使用dom4j解析
  3. Windows环境黑客入侵应急与排查
  4. 网易云音乐怎样下载mp3格式的音乐
  5. 盘点2019年PHP高级开发工程师面试题及答案汇总
  6. uni-app 结合云函数开发小程序博客(二):云函数实现登录注册
  7. BUUCTF VoIP
  8. 单片机外部晶振-XTAL和EXTAL引脚
  9. VMware Workstation虚拟机设置联网(Linux)
  10. WPS插件开发流程(2)