vb中rnd是產(chǎn)生隨機(jī)數(shù)得函數(shù) 是什么意思呢?
返回一個包含隨機(jī)數(shù)值的
Single。
語法
Rnd[(number)]
可選的
number
參數(shù)是
Single
或任何有效的數(shù)值表達(dá)式。
返回值
如果
number
的值是
Rnd
生成
小于
0
每次都使用
number
作為隨機(jī)數(shù)種子得到的相同結(jié)果。
大于
0
序列中的下一個隨機(jī)數(shù)。
等于
0
最近生成的數(shù)。
省略
序列中的下一個隨機(jī)數(shù)。
Rnd
函數(shù)返回小于
1
但大于或等于
0
的值。
number
的值決定了
Rnd
生成隨機(jī)數(shù)的方式。
對最初給定的種子都會生成相同的數(shù)列,因?yàn)槊恳淮握{(diào)用
Rnd
函數(shù)都用數(shù)列中的前一個數(shù)作為下一個數(shù)的種子。
在調(diào)用
Rnd
之前,先使用無參數(shù)的
Randomize
語句初始化隨機(jī)數(shù)生成器,該生成器具有根據(jù)系統(tǒng)計(jì)時器得到的種子。
為了生成某個范圍內(nèi)的隨機(jī)整數(shù),可使用以下公式:
Int((upperbound
-
lowerbound
+
1)
*
Rnd
+
lowerbound)
這里,upperbound
是隨機(jī)數(shù)范圍的上限,而
lowerbound
則是隨機(jī)數(shù)范圍的下限。
注意
若想得到重復(fù)的隨機(jī)數(shù)序列,在使用具有數(shù)值參數(shù)的
Randomize
之前直接調(diào)用具有負(fù)參數(shù)值的
Rnd。使用具有同樣
number
值的
Randomize
是不會得到重復(fù)的隨機(jī)數(shù)序列的。
Dim
MyValue
MyValue
=
Int((6
*
Rnd)
+
1)
'
生成
1
到
6
之間的隨機(jī)數(shù)值。