rnd[隨機函式]

rnd[隨機函式]

rnd(random function),是Visual basic、Access、Excel等中的隨機函式。屬於程式設計的領域。格式為Rnd()。

簡介

Visual Basic中隨機函式

格式:Rnd(<數值表達式>)

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

語法:

Rnd[(number)]

如果 number 的值是 Randomize 生成

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

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

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

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

說明

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

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

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

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

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

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

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

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

函式示例

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

Dim MyValue

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

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

資料庫

"SELECT * from data where ORDER BY right(cstr(rnd(-int(rnd(-timer())*100+id)))*1000*Now(),2)

每次刷新重新排序數據不重複

相關詞條

相關搜尋

熱門詞條

聯絡我們