回覆列表
  • 1 # Dr密

    1、格式:Rnd(<數值表示式>)

    2、功能:求[0,1)之間的一個隨機數

    3、語法:

    Rnd[(number)]

    如果 number 的值是 Randomize 生成

    小於 0 ,每次都使用 number 作為隨機數種子得到的相同結果。

    大於 0 ,以上一個隨機數為種子產生下一個隨機數。

    等於 0 ,產生與最近生成的隨機數相同的隨機數。

    省略, 以上一個隨機數為種子產生下一個隨機數。

    4、說明

    Rnd 函式返回小於 1 但大於或等於 0 的值。

    number 的值決定了 Rnd 生成隨機數的方式。

    對最初給定的種子都會生成相同的數列,因為每一次呼叫 Rnd 函式都用數列中的前一個數作為下一個數的種子。

    在呼叫 Rnd 之前,先使用無引數的 Randomize語句初始化隨機數生成器(若帶引數,則產生由引數對應的一個特定序列的隨機數),該生成器具有根據系統計時器得到的種子。

    為了生成某個範圍內的隨機整數,可使用以下公式:

    Int((upperbound - lowerbound + 1) * Rnd + lowerbound)

    這裡,upperbound 是隨機數範圍的上限,而 lowerbound 則是隨機數範圍的下限。

    注意 若想得到重複的隨機數序列,在使用具有數值引數的 Randomize 之前直接呼叫具有負引數值的 Rnd。使用具有同樣 number 值的 Randomize 是不會得到重複的隨機數序列的。

    擴充套件資料:

    函式示例

    本示例使用Rnd函式隨機生成一個1到6的隨機整數。

    DimMyValue

    MyValue=Int((6*Rnd)+1)'生成1到6之間的隨機數值,這裡的int是把後面產生的小數轉換成整數!

    由於Rnd是[0,1),(6*Rnd)+1為[1,7)。int是求不大於number的最大整數,所以得出1~6的隨機數

  • 中秋節和大豐收的關聯?
  • 送書籤,怎麼寫祝福語?