1. 编程要求与名词解释:
随机投点法(随机数法或蒙特卡洛法)计算圆周率。蒙特卡洛是一个地名,位于赌城摩纳哥,象征概率。蒙特卡洛(Monte Carlo)方法是由大名鼎鼎的数学家冯·诺伊曼提出的,诞生于上世纪40年代美国的“曼哈顿计划”。原理是通过大量随机样本,去了解一个系统,进而得到所要计算的值。
2. 问题分析与算法设计:
一个正方形内部相切一个圆,圆和正方形的面积之比是π/4。在这个正方形内部,随机产生n个点(这些点服从均匀分布),计算它们与中心点的距离是否大于圆的半径,以此判断是否落在圆的内部。统计圆内的点数,与n的比值乘以4,就是π的值。理论上,n越大,计算的π值越准。
3. 定义变量。如下图:
为了提高计算精度,数据类型选择LReal。
4. 编写程序。如下图:
该方法得到的圆周率精度与投入的点的个数有关,一般个数越多精度越高。
5. 功能测试。如下图:
计算结果π为一个动态值。
6. 学习要点与知识总结:
学习IF…ELSE条件语句;
学习FOR循环语句;
学习组合赋值运算符的使用;
注意浮点数精度问题。