【Access基础】随机数函数--Rnd函数
时 间:2019-02-18 13:43:18
作 者:张迪 ID:70235 城市:长沙
摘 要:简单介绍下随机数的使用,和‘假随机事件’的产生。帮助大家更好的学习Access,更好的应用于生活。
正 文:
在我们日常生活中经常见到随机数的使用,比如随机抽奖,随机推送,随机密码等等。今天我们就来看一下Access中简单的随机数函数——Rnd函数。
语法:
Rnd[(number)]
可选的 number 参数是 Single(单精度浮点型) 或任何有效的数值表达式
返回值:
如果number是 Rnd生成
小于0 每次都使用number作为随机数种子得到相同结果。
大于0 序列中的下一个随机数。
等于0 最近生产的数。
省略 序列中的下一个随机数。
说明:
Rnd函数返回小于1但大于或等于0的值。
为了生产某个范围内的随机整数,可以使用以下公式:
Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
这里,upperbound 是随机数的上限,lowerbound是随机数的下限。比如:int((6 - 1 + 1) * Rnd + 1)是随机生成一个1到6之间的整数。
值得注意的是我们这样写出来的随机数,看着生成的数像是随机产生的,但细心的朋友会发现,每次重新运行时,它所产生的随机数列是固定的。依然拿上面的例子说明:首次运行程序时它可能产生的随机数列是这样的(3,5,6,2,2,4,5,1,3……),这种数列确实是随机数列,但如果关闭程序后重新运行程序会发现,它产生的数列还是(3,5,6,2,2,4,5,1,3……),那么产生这种情况的原因是什么呢?这跟Access中Rnd函数的机制有关,这里就不介绍了,感兴趣的朋友可以自己查阅下相关资料。那么怎么解决这样的假随机事件的产生呢?Access也给我们提供了方法,那就是:
在执行随机数函数前,先初始化一个随机数生成器,代码如下:
Randomize
Int(6 * Rnd + 1 )
这样出来的结果就会避免刚才那样的情况发生的。当然,其实这样的随机也不能够保证完全随机,在一定量大的数据中,它还是会发生一些重复事件,不过对于我们来说已经够用了,基本上不会碰到。
大家学到了吗?
Access软件网QQ交流群 (群号:54525238) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- 统计当月之前(不含当月)的记录...(03.11)
- 【Access Inputbo...(03.03)
- 按回车键后光标移动到下一条记录...(02.12)
- 【Access Dsum示例】...(02.07)
- Access对子窗体的数据进行...(02.05)
- 【Access高效办公】上月累...(01.09)
- 【Access高效办公】上月累...(01.06)
- 【Access Inputbo...(12.23)
- 【Access Dsum示例】...(12.16)

学习心得
最新文章
- 仓库管理实战课程(9)-开发往来单...(04.02)
- 仓库管理实战课程(8)-商品信息功...(04.01)
- 仓库管理实战课程(7)-链接表(03.31)
- 仓库管理实战课程(6)-创建查询(03.29)
- 仓库管理实战课程(5)-字段属性(03.27)
- 设备装配出入库管理系统;基于Acc...(03.24)
- 仓库管理实战课程(4)-建表操作(03.22)
- 仓库管理实战课程(3)-需求设计说...(03.19)
- 仓库管理实战课程(2)-软件背景和...(03.18)
- 仓库管理实战课程(1)-讲师介绍(03.16)