ios取两个数之间的随机小数_【按键精灵】细说Rnd随机函数

本文介绍了如何使用按键精灵在iOS环境中生成两个数之间的随机小数,详细解析了Int和Rnd函数的用法,以及如何通过Randomize函数初始化随机数生成器,确保每次都能得到不同的随机数。
摘要由CSDN通过智能技术生成

金猪脚本(原飞猪脚本)以按键精灵教学为主,涉及UiBot,Python,Lua等脚本编程语言,教学包括全自动办公脚本,游戏辅助脚本,引流脚本,网页脚本,安卓脚本,IOS脚本,注册脚本,点赞脚本,阅读脚本以及网赚脚本等各个领域。想学习按键精灵的朋友可以添加金猪脚本粉丝交流群:554127455 学习路上不再孤单,金猪脚本伴你一同成长.

公式】 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函数。

a4d2e1892e425b5dcd1416096dab4c02.gif

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)

bba099585b6fb931984372b39b375a97.gif

第一步:运算(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(下界值)

5c70b72f2f8c457e6afdaf58609f8613.png

现在我们不加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 函数。初始化随机数的生成器,才会产生新的随机数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值