一道概率题(笔试)
来源:互联网 发布:杭州电信网络测速 编辑:程序博客网 时间:2024/05/21 11:22
下面的程序是什么意思?求出来的是什么值?
#include <stdlib.h>int main(){ int rgnC = 0, LOOP; scanf("%d\n", &LOOP); int x, y, i; for (i = 0; i < LOOP; i++) { x = rand(); y = rand(); if (x*x + y*y < RAND_MAX*RAND_MAX) rgnC++; } printf("%d\n", rgnC); return 0;}
这个程序蕴涵的思想是一个1/4圆与一个正方形比较大小的问题,如下图:
RAND_MAX是rand()函数生成的最大随机数,RAND_MAX*RAND_MAX是以该值为半径的正方形面积
x*x + y*y 是(x,y)到原点的距离,距离可能大于R,如b,小于R,如a。
题目意思就是在正方形中落LOOP个点,落在以RAND_MAX为半径的圆的点有多少个,
所以比值应该为以RAND_MAX为半径的圆与以RAND_MAX为正方形的面积之比。
计算如下:
1/4圆面积:(1/4)*pi*r*r;
正方形面积:r*r;
二者之比:pi/4
落点数:pi/4 * LOOP
LOOP越大,落点总数rgnC/LOOP的值越接近pi/4
0 0
- 一道概率题(笔试)
- 一道笔试题(python)
- 一道概率题
- 一道概率题
- 一道概率题
- 再来一道概率题
- 一道概率题
- 一道智力题(某公司笔试题)
- 一道笔试题的思考(三)
- 一道笔试题(扑克牌顺子)
- 每天一道笔试题(腾讯1)
- gameloft一道笔试题
- google笔试题一道
- 网易一道笔试题!
- 一道迅雷笔试题
- 一道MSSQL笔试题
- 一道笔试题
- 一道java笔试题
- 【创业说】零经验接手APP运营推广,聊聊这两个月我是怎么熬过来的
- cocos3.2学习微信打飞机
- 操作系统学习:线程 与 进程
- 杂店记录_002:c++中%s与string对象匹配
- 数据库操作案例
- 一道概率题(笔试)
- JAVA 加密算法简介
- MyEclipse重装后,如何使用原来装好的Adobe Flex Builder 4
- yum提示another app is currently holding the yum lock;waiting for it to exit
- linux设置语言环境
- 数据库设计注意事项
- 树状数组,二查索引树,BIT
- js中arguments,caller,callee,apply的用法小结
- TDS6.3 无法启动 原因一二