主题:请教大侠一个问题
hzjx
[专家分:0] 发布于 2006-04-09 22:31:00
这几次的考试,我遇到了一个问题。有些产生随机数的题目中,rnd函数经常就会出现rnd(X)的形式,x通常为0或1,有一次甚至取到了4。不知道这种有什么用?对产生下一个随机数有什么影响呢?
回复列表 (共7个回复)
沙发
喜欢QB [专家分:200] 发布于 2006-04-09 23:35:00
RND(x)
当x>0时,RND函数产生序列中的下一个随机数
当x=0时,RND函数给出上次产生的随机数
板凳
moz [专家分:37620] 发布于 2006-04-10 00:06:00
有影响。
但至于有什么影响嘛,就难说了,可以忽略不计,
也不知道有什么影响,反正就是有影响。
应该说有“不可预料”的影响。
3 楼
meizi177 [专家分:70] 发布于 2006-04-10 07:36:00
但是如果不改变种子的话每次产生的随机数还是一样的!
4 楼
moz [专家分:37620] 发布于 2006-04-10 10:50:00
那不是种子,
[color=00FF00]那是已经生成了的一个随机数序列.
如果不用下标,将一直获得下一个随机数.
如果使用下标,
你可以把它们看成是一个既定的数组.
rnd(n) 那么rnd(4)=rnd(4)就不难理解了吧?[/color] 这里是错误的.
RND returns a single-precision number between 0 and 1.
RND[(n#)]
Usage Notes
■ The value of n# determines how RND generates the next random number:
Argument Number returned
══════════════ ═══════════════════════════════════════════════
n# < 0 Always returns the same number for any given n#.
n# > 0 or Returns the next random number in the sequence.
n# omitted
n# = 0 Returns the last number generated.
5 楼
品花人 [专家分:10] 发布于 2006-04-21 16:36:00
括号里面的X不会影响随机函数的,不管X为和数RND(X)都为0-1之间的数
如果不改变随机种子无论取几次都一样
FOR I=1 TO 9
A(I)=INT(RND*10)
PRINT A(I)
NEXT I
输出结果为0-9得数
但多运行几次你会发现永远都是老的几个数
6 楼
品花人 [专家分:10] 发布于 2006-04-21 16:37:00
最前面少了CLS
最后面少了END
打得太急了,别建议
7 楼
meizi177 [专家分:70] 发布于 2006-04-23 19:02:00
to :moz
但是书上讲它就是种子.虽然你讲的也有道理.而且证据确凿!!
我来回复