计算机中的随机函数
摘要:随机函数是计算机科学数学函数中较难理解和使用的一个,本文根据教学实践谈谈对随机函数及其应用的认识和体会。
一、随机数与随机函数的概念
所谓随机数(Random)是指事先不能确定的数,只有当相应的事件发生后其值才能确定。自然界和社会生活中存在着大量的随机现象和随机事件。臂如,抛5分钱硬币,我们事先不能确定结果是正面朝上还是反面朝上,只有当钱币被抛下后,我们才知道是正面朝上还是反朝上。
既然事先不能确定随机数的值,那么这样说来,随机数是不是就不可捉摸了呢?答案是否定的。经过大量观察和科学试验发现,随机数是有规律可循的,它遵循两条规律:①有一定的取值范围。抛硬币的结果无非是正面或反面朝上,不会出现在这之外的结果,也就是取值范围是{X|X=“正面” OR X=“反面”}。②当大量发生时随机数的分布是均匀的。当我们抛硬币的次数较少时,统计出的出现“正面”和“反面“的次数会相差较大,但当抛下的次数较大(如抛下10000次)时,统计出的出现“正面”和“反面“的次数会相差较小,我们可以组织学生进行这样的有趣试验。有试验表明当抛下10000次时,“正面”和“反面”各出现4978次和5022次,与均匀数字10000/2(5000)相差22,占0.44%(22/5000),从图1直观地看代表“正面”和“反面”的两根数据条一样高,达到了“均匀”。
计算机中,采用模拟的方法运用随机函数产生随机数。不同的计算机软件产生的随机数方式、函数名有所不同,但都遵循随机数的上述两条规律。
例如,在EXCEL中,随机函数RAND()产生的随机数满足:①0≤RAND()<1 即取值范围为[0,1)。 ②当大量调用时产生的随机数均匀分布。
参照图2。图2中的数据来源于表1。当产生的随机数是4行、11列共44个(4*11)时,从相应的图表可直观地看出数据的分布不均匀。
当产生的随机数扩展到73行、11列共803个(73*11)时,从相应的图3可直观地看出数据呈均匀分布状态。可以预测数据俞多,其分布俞均匀。
表1 4行*11列共44个随机数 | ||||||||||
0.90 | 0.74 | 0.98 | 0.28 | 0.07 | 0.61 | 0.84 | 0.53 | 0.83 | 0.36 | 0.66 |
0.79 | 0.37 | 0.20 | 0.53 | 0.59 | 0.01 | 0.72 | 0.44 | 0.03 | 0.64 | 0.88 |
0.52 | 0.45 | 0.52 | 0.90 | 0.56 | 0.13 | 0.62 | 0.46 | 0.56 | 0.86 | 0.64 |
0.54 | 0.94 | 0.89 | 0.55 | 0.56 | 0.11 | 0.09 | 0.02 | 0.52 | 0.80 | 0.59 |
掌握了随机数和随机函数的规律,我们就可以运用计算机解决许多实际问题,如随机抽取试题、考试选题单的制作、随机摇号、数学测试题、游戏中的随机事件等等。
二、随机函数的应用
示例 创建一个命名为MR.XLS的EXCEL文档,在其中创建一个名为MR的宏,快捷键为CTRL+SHIFT+R,功能为产生一个三位整数。
分析:问题的实质就是要构造一个数学式子,产生整数区间[100,1000)。EXCEL提供了随机函数RAND()。因为0≤RAND()<1,所以左中右三边同乘(1000-100),得到:0*(1000-100)≤(1000-100)* RAND()<1*(1000-100),即0≤(1000-100)* RAND()<1000-100。从而,不等式左中右三边同时加100,得到:100≤100+(1000-100)* RAND()<1000。所以INT(100+(1000-100)* RAND())即达到问题的要求。
操作步骤(采用EXCEL2003):
第一步:打开EXCEL,新建工作薄,保存为MR.XLS。
第二步:选择“工具”菜单,从弹出的菜单中选中“宏”,再从中选择下一级菜单“录制新宏”,进入“录制新宏”会话框。
第三步:在“录制新宏”会话框中设置各参数:宏名为“MR”,快捷键为CTRL+SHIFT+R,保存在为“当前工作薄”,选择“确定”,进入宏录制现场。
第四步:在当前单元格中输入“= INT(100+(1000-100)* RAND())”。
第五步:选择宏录制工具条上“停止”按钮。整个录制工作结束。
高级程序设计语言中随机数函数的使用关键常涉及到区间构造问题。一般地,区间[a,b)可以通过如下式子得到:a+(b-a)* RAND()。其中, a是区间的起点,b是区间的终点,b-a 是区间的长度。要得到整数区间[a,b),用以下式子可得:INT(a+(b-a)* RAND())。具体例子不再赘述。
- 别被这个老掉牙的报纸理论版投稿邮箱误导了!最新核实91个报纸理论版投稿邮箱通道,一次集齐
- 喜报!《中国博物馆》入选CSSCI扩展版来源期刊(最新CSSCI南大核心期刊目录2025-2026版)!新入选!
- 2025年中科院分区表已公布!Scientific Reports降至三区
- 国内核心期刊分级情况概览及说明!本篇适用人群:需要发南核、北核、CSCD、科核、AMI、SCD、RCCSE期刊的学者
- CSSCI官方早就公布了最新南核目录,有心的人已经拿到并且投入使用!附南核目录新增期刊!
- 北大核心期刊目录换届,我们应该熟知的10个知识点。
- 注意,最新期刊论文格式标准已发布,论文写作规则发生重大变化!文字版GB/T 7713.2—2022 学术论文编写规则
- 盘点那些评职称超管用的资源,1,3和5已经“绝种”了
- 职称话题| 为什么党校更认可省市级党报?是否有什么说据?还有哪些机构认可党报?
- 《农业经济》论文投稿解析,难度指数四颗星,附好发选题!

0373-5939925
2851259250@qq.com

