VB的Rnd函数使用问题?

VB的Rnd函数使用问题?,第1张

这个题目要注意的是0~100,总共有101个数字

所以,如果按概率的平均分配来讲,

dim i as long

i=int(rnd101)

这是最准确的,它保证了每个数字都有1/101的概率被获取

同时,

dim i as long

i=rnd100

也可以获取从0~100的随机数,但是需要注意的是,它并不是平均分配的

从1~99这99个数都有1%的概率被获取,但是0和100只有05%的概率被获取

这就是两种算法的区别所在

你可以向老师提出这个问题,我认为两种答案按照题目的意思来讲都是正确的,但是在实际处理问题的时候,第一种方法显然更加准确

但是考试的时候请注意题目有没有什么特殊限制要求

另外,vb的四舍五入我始终觉得有点奇怪,虽然可能是由于它自身程序开发的处理所致,但是15要四舍五入一般为2,但是vb里确认为是1,我不知道让程序自动解决这个问题,所以现在我还是用自己的函数做四舍五入,请有知道的朋友告知,谢谢

你看了Randomize的帮助,该函数是以时间为基准的,“每天的同一时间”其实是不相同的,你就在Excel试试函数Now(),vb中也一样,所以只要用了Randomize,Rnd函数就会产生不同的随机数。

RND 函数是需要一个 种子 的。如果不给这个参数的话,默认为 0。那么,每次执行的时候得到的随机数列的值都是相同的。

为了得到不同的随机序列值,你可以使用 当前时间 作为 RND 的 种子 参数。这样一天内就不会出现相同的随机数列。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/langs/13494022.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2025-09-01
下一篇2025-09-01

发表评论

登录后才能评论

评论列表(0条)

    保存