蒙特卡罗方法计算圆周率

蒙特卡罗方法是一个撒点方法,取一个正圆的四分之一,和一个正方形的四分之一

形成一个单位方形,单位四分之一圆和四分之一正方形之比,就构成了圆周率

向这个区域撒点,如果点落在圆内部,就是圆内部的一部分,如果落在正方形中,就是正方形的一部分

代码

调用random函数,并且使用了perf_counter这个函数,是可以用来计时的一部分

定义变量,当作抛洒点的总数量

撒在圆内部点为0

开始计时

循环撒点的过程看成是遍历循环的过程

用for in range对所有点进行抛洒

  定义x,y当作两个随机数的坐标值,这个坐标就是圆的抛点

  

如何判断这个坐标就在圆内呢?判断这个点到圆心的距离是否等于1

  

如果在圆的内部,就加一

  

用这个值比上整个区域值

输出圆周率值

计算计算时间

最新文章

  1. kafka(logstash) + elasticsearch 构建日志分析处理系统
  2. C#基础:委托
  3. [转载] Jenkins入门总结
  4. oracle11g dataguard 安装手册(转)
  5. 【leetcode】Edit Distance
  6. JAVA运算符和优先级
  7. 自定义弹出div对话框
  8. Servlet & JSP - Decorating Requests and Responses
  9. X-Plane飞行模拟器购买安装
  10. Let the Balloon Rise(map)
  11. Java 集合之LinkedList源码分析
  12. (转)SimpleDateFormat使用详解
  13. confluence搭建详情
  14. Virtualbox扩展硬盘
  15. Day09 -超级经典面试题:Ruby的a ||= b(or-equals)是什么意思呢?
  16. CSS 布局术语
  17. MyBatis源码解析(五)——DataSource数据源模块之非池型数据源
  18. ansible-playbook && Roles && include
  19. pandoc 基本使用
  20. PHP 写文件的例子

热门文章

  1. JetCache埋点的骚操作,不服不行啊
  2. Linux下mv命令高级用法
  3. Docker日常使用方式
  4. Hadoop的源码编译
  5. Python 为什么没有 void 关键字?
  6. IdentityServer4中ResourceOwnerPassword模式获取accecc_token,并使用refresh_token刷新accecc_token
  7. 09.redis 哨兵主备切换时数据丢失的解决方案
  8. 广州做假证c
  9. android 使用svg 和 webp
  10. IOS 打包相关