asp中的Rnd 函數(shù)

字號:


    Rnd 函數(shù)
    描述
    返回一個隨機(jī)數(shù)。
    語法
    Rnd[(number)]
    number 參數(shù)可以是任意有效的數(shù)值表達(dá)式。
    說明
    Rnd 函數(shù)返回一個小于 1 但大于或等于 0 的值。 number 的值決定了 Rnd 生成隨機(jī)數(shù)的方式:
    如果 number 為 Rnd 生成
    小于零 每次都相同的值,使用 number 作為種子。
    大于零 序列中的下一個隨機(jī)數(shù)。
    等于零 最近生成的數(shù)。
    省略 序列中的下一個隨機(jī)數(shù)。
    因每一次連續(xù)調(diào)用 Rnd 函數(shù)時都用序列中的前一個數(shù)作為下一個數(shù)的種子,所以對于任何最初給定的種子都會生成相同的數(shù)列。
    在調(diào)用 Rnd 之前,先使用無參數(shù)的 Randomize 語句初始化隨機(jī)數(shù)生成器,該生成器具有基于系統(tǒng)計時器的種子。
    要產(chǎn)生指定范圍的隨機(jī)整數(shù),請使用以下公式:
    Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
    這里, upperbound 是此范圍的上界,而 lowerbound 是此范圍內(nèi)的下界。
    --------------------------------------------------------------------------------
    注意 要重復(fù)隨機(jī)數(shù)的序列,請在使用數(shù)值參數(shù)調(diào)用 Randomize 之前,立即用負(fù)值參數(shù)調(diào)用 Rnd。使用同樣 number 值的 Randomize 不能重復(fù)先前的隨機(jī)數(shù)序列。
    ---------------------------------
    舉例:
    我們通常使用now()來做種子,這樣可以得到比較完美的隨機(jī)序列,如果我們需要1-100內(nèi)的一個隨機(jī)數(shù)
    Randomize()
    n=Int((100-1+1)*Rnd(now())+1)