实验2_统计的方法求pi
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验要求
完成上述代码,并能显示正确的π 值计算结果。
实验 2 统计的方法求π
实验目的
熟练运用循环和数值计算
实验内容
有一个正方形和它的内切圆。圆的半径为 R,则正方形的边长为 2R,内切圆 与正方形的面积比:
S圆 S 圆正方形
=
π R2 4R 2
=
π 4
如果在正方形区域内随机产生大量的均匀分布的点, 那么落入内切圆和正方 形中的随机点个数的比值等于它们的面积之比。该比值乘以 4,即为π 值。
intv1 = rand() % 100; // v1 是 0 到 99 之间的整数 float v2 = float(rand())/float(RAND_MAX); // v2 是 0 到 1 之间的浮点数
#include <iostream> #include <iomanip> int main(intargc,char*argv[]) { // 声明所用的变量并正确初始化 // 编写求 pi 的循环 // 在你的循环体内 { //调用 rand()函数,产生随机二维点(两个随机数:x 坐标和 y 坐标) // 将随机数变换到正方形所在的区间,利用系统宏 RAND_MAX // 计算点是否在圆内 // 更新统计数据,求 pi 值 } // 在控制台输出 pi 值 return0; }
ቤተ መጻሕፍቲ ባይዱ
本次实验的主要内容是利用上述方法计算π , 以给定的精度作为求π 循环的 终止条件。要求: 1. 利用 for 循环或 while 循环; 2. 设定合适的终止条件。
3. 练习单步跟踪调试程序。 4. 注意变量的可取值范围。 提示:库函数 rand()可以产生在[0,RAND_MAX]范围内的随机整数,可在程序 中直接使用,其中 RAND_MAX 是宏,是 rand()函数可以产生的最大的整数。 通过强制类型转换和缩放可以把生成的整数变换到任意的范围。例如: