广东湘恒智能科技有限公司
主营产品: 西门子变频器,西门子PLC\西门子模块、西门子触摸屏、西门子伺服电机、西门子工控机、西门子集成系统、西门子低压、西门子控制单元、西门子CPU,广东省西门子授权代理商,等
SIEMENS咸阳市西门子(授权)中国总代理-西门子西北区一级总代理商

1. 编程要求与名词解释:

随机投点法(随机数法或蒙特卡洛法)计算圆周率。蒙特卡洛是一个地名,位于赌城摩纳哥,象征概率。蒙特卡洛(Monte Carlo)方法是由大名鼎鼎的数学家冯·诺伊曼提出的,诞生于上世纪40年代美国的“曼哈顿计划”。原理是通过大量随机样本,去了解一个系统,进而得到所要计算的值。

图片


2. 问题分析与算法设计:

一个正方形内部相切一个圆,圆和正方形的面积之比是π/4。在这个正方形内部,随机产生n个点(这些点服从均匀分布),计算它们与中心点的距离是否大于圆的半径,以此判断是否落在圆的内部。统计圆内的点数,与n的比值乘以4,就是π的值。理论上,n越大,计算的π值越准。

3. 定义变量。如下图:

 

图片

为了提高计算精度,数据类型选择LReal。

4. 编写程序。如下图:


图片


该方法得到的圆周率精度与投入的点的个数有关,一般个数越多精度越高。

5. 功能测试。如下图:


图片


计算结果π为一个动态值。

6. 学习要点与知识总结:

学习IF…ELSE条件语句;

学习FOR循环语句;

学习组合赋值运算符的使用;

注意浮点数精度问题。


展开全文
相关产品
拨打电话 微信咨询 发送询价