又遇难题了!求大神解答
vb吧
全部回复
仅看楼主
level 4
kass 楼主
随机数不会
2022年05月12日 15点05分 1
吧务
level 13
' 【随机数】就是在某个数据区间内随意取一个数【x】。
Randomize ' 随机数不重复
x = (结束数 - 开始数 + 1) * Rnd + 开始数
注意:
⑴ 【开始数】和【结束数】均为整数,而且【结束数】>【开始数】;
⑵ Rnd 是一个 0 到 1 之间的小数;
⑶ 随机数【x】是一个含有小数的浮点数。
※ 如果【x】要求是整数,则
x = Int((结束数 - 开始数 + 1) * Rnd + 开始数)
※ 如果【开始数】和【结束数】均为小数,请先扩大 10^n 倍变成整数;
  计算出随机数后,再缩小 10^n 倍。
※ 【随机数】主要用于某种活动抽奖、电子考试抽题……等场合。
2022年05月13日 01点05分 3
level 15
这题也是年年都有啊[滑稽]
“x的随机数”,我的第一反应是Rnd(x)[滑稽]毕竟Rnd其实是可以带参数的,虽然这个参数是正数时并没有什么卵用
而且关键问题在于,楼主的图片里确实是一个0~1之间的小数,这很符合直接调用Rnd的特征
所以我觉得答案就是Rnd(x)了
2022年05月13日 02点05分 4
另外正经来说,3楼才是Rnd的“标准”用法,毕竟需要获得随机整数的场合居多
2022年05月13日 02点05分
level 15
关于Rnd的“标准”用法:
如果需要得到[a,b]范围内的整数(其中a和b也是整数),则使用此公式:
Int((b-a+1)*Rnd)+a
如果需要得到[a,b)范围内的不限位数的小数(其中a和b不要求是整数),则使用此公式(3楼的公式及相关说法有误):
(b-a)*Rnd+a
如果需要得到[a,b]范围内的n位小数(其中a和b的小数位数也不超过n),则使用此公式:
Int(((b-a)*10^n+1)*Rnd)/10^n+a
这种情况其实是上述“随机整数公式”的变式
2022年05月13日 02点05分 5
1