• 按键公众号 :
按键精灵电脑版
立即下载

软件版本:2014.06
软件大小:22.9M
更新时间:2021-12-03

按键精灵安卓版
立即下载

软件版本:3.7.2
软件大小:46.2M
更新时间:2023-05-10

按键精灵iOS版
立即下载

软件版本:1.8.0
软件大小:29.2M
更新时间:2023-03-21

按键手机助手
立即下载

软件版本:3.8.0
软件大小:262M
更新时间:2023-05-30

快捷导航

登录 后使用快捷导航
没有帐号? 注册

返回列表 12345678» / 14
发新话题 回复该主题

[技术交流] 【院刊】-【201411期】细说 Rnd随机函数 [复制链接]

1#

细说Rnd随机函数



▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂

有同学问:Int((upperbound - lowerbound + 1) * Rnd + lowerbound) 这个产生随机整数的公式里,为什么要加1呢?为什么呢?我们一起来解剖下这个公式~

▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂▂﹏▂﹏▂﹏▂﹏▂﹏▂﹏▂

【公式】 Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
【中文翻译】 取整((上界-下界+1)*Rnd+下界)
【功能】下界到上届 范围内的随机整数 ,随机到的整数范围包含下界和上界
例如:Int((100-1+1) * Rnd +1),取 1 -100 之间的包含1和100的随机整数

如果不按照公式写,我们直接写 int(Rnd(100))
那么,随机到的整数,范围是0-99,永远随机不到100这个值。


按照顺序解剖这个公式,首先是int函数。


Int函数

【功能】 小数部分舍去,返回数字的整数部分。【例子】 Int(99.8) ' 返回值为 99。
Int(99.4) ' 返回值为 99。


upperbound 和 lowerbound 通过上面的中文翻译,我们已经知道了,它们是随机函数的界限值,upperbound 是大的数,lowerbound 是小的数。 那我们接下去讲讲今天的主角Rnd

Rnd函数

【功能】 Rnd 函数返回一个小于 1 但大于或等于 0 的值
【分析】 也就是说它返回的是 0-0.9999999 (N个9) 之间的数,接近1但不等于1.

知道了Rnd函数的随机值范围,咱们就可以做进一步分析了~

公式运算分析



假设我们要获取 1-100之间的随机数。1是下界(lowerbound),100是上界(upperbound),代入公式:
Int((upperbound - lowerbound + 1) * Rnd + lowerbound)




第一步:运算(upperbound - lowerbound + 1) ,代入100和1,得到100
第二步:100* Rnd, 我们知道rnd函数得到的最大值是0.99999无限接近1,我们假设它是最大值0.99999 ,来计算下得到的随机数最大的会是多少。那么现在100*rnd就等于99.99999
第三步:加上 lowerbound,99.99999+1=100.99999
第四步:int(100.999999),把小数部分都舍去,那就是100



按照上面的方式,我们把rnd的值设置为最小值0,得到的结果是: 1(下界值


现在我们不加1运算看看, Int((upperbound - lowerbound ) * Rnd + lowerbound)
int((100-1)*rnd+1),rnd依然假设为最大值0.99999

那么,运算结果为:99 ,无法随机得到100这个值。


如果 Int((upperbound - lowerbound ) * Rnd ) + lowerbound去掉
下界的效果也会失效,int(100*rnd),随机值的范围就在:0-99之间。

再然后,就不得不提下,rnd函数年度最佳小伙伴Randomize 函数

Randomize 函数

【功能】 初始化随机数生成器。

如果不想出现,每一次随机到的数都和第一次随机到的数一样的情况。
就需要在使用rnd函数之前,使用 Randomize 函数。初始化随机数的生成器,才会产生新的随机数。





本文按键学院提供技术支持

━═━═━━═━═━━═━═━◥◤━═━═━━═━═━━═━═━


2个月学会赚大钱的脚本

按键学院实战班


    已有2评分我要评分查看所有评分

    本主题由 超级版主 瑞祥幽冥狼 于 2023/10/5 18:22:42 执行 审核帖子 操作
    按键学院免费交流群:376122403

    按键学院招生计划
    按键学院系统教程
    2#

    我来了

    3#

    看看

    4#

    我来学习的

    5#

    看看是不是我需要的 学习下

    <strong>本人喜欢做办公脚本,有需要的可以联系!<br />
    QQ:1155661</strong>
    6#

    看看

    7#


    8#


    9#

    gh4hg4

    10#

    一直看不懂

    11#


    12#

    随机数是个好东西啊

    13#

    好的 我来看看

    14#

    看看学习

    15#

    234432

    16#

    插件测试

    17#

    我要看看这个随机数怎么用的

    18#

    iiiiiiiiiiiiiiiiiiiiiiiiii

    19#

    我居然模模糊糊的听懂了

    20#

    谢谢分享了!!!!!!!

    发新话题 回复该主题