VB 產生隨機數用什麼語句

時間 2023-04-20 13:24:04

1樓:vb妮可

補充:private sub command1_click()

dim i%, j%, x%

randomize

for i = 1 to 5

for j = 1 to 10

x = int(10 * rnd + 1)

print x;

if x = 8 then exit for

nextprint

nextend sub

int((upperbound - lowerbound + 1) *rnd + lowerbound)

rnd 函式。

返回乙個包含隨機數值的 single。

語法。rnd[(number)]

可選的 number 引數是 single 或任何有效的數值表示式。

返回值。如果 number 的值是 rnd 生成。

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

大於 0 序列中的下乙個隨機數。

等於 0 最近生成的數。

省略 序列中的下乙個隨機數。

說明。rnd 函式返回小於 1 但大於或等於 0 的值。

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

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

在呼叫 rnd 之前,先使用無引數的 randomize 語句初始化隨機數生成器,該生成器具有根據系統計時器得到的種子。

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

int((upperbound - lowerbound + 1) *rnd + lowerbound)

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

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

2樓:戀紅

vb中產生隨機數可以使用rnd函式。使用前建議先使用randomize語句初始化隨機數生成器。rnd返回 大於等於0 小於1 之間的數值(1>rnd>=0),所以如產生0到100的隨機數,可以這樣寫:

dim irndval

randomize

irndval = int((100 * rnd) +1)

3樓:

樓上的夠詳細的!一般用rnd函式產生。

vb中隨機函式的公式是什麼

4樓:

rnd*(b-a+1)+a

產生[a,b]閉區間的隨機數。

vb隨機檔案

5樓:網海1書生

隨機檔案是vb的一種類似於資料庫的一種檔案格式,它和順序檔案的最大區別是隨機檔案是以資料塊為儲存單位的(順序檔案則是以行或字元為單位的),就像把一大塊蛋糕分成相等的n塊,然後可以任意取出其中的某塊,這也就是「隨機檔案」這個名稱的由來。而順序檔案則做不到這樣,要想取出其中的某行,由於每行的字數不一定相等,所以是不能直接取出來的,必須先按順序取出該行前面的每一行,一直到需要的那行,所以叫「順序檔案」。

正是因為隨機檔案可以隨機取出其中任意乙個資料塊的特點,所以一些vb程式用隨機檔案來作為小型資料庫使用。

但是(請注意這個「但是」),所謂的「隨機檔案」並不是指某種(或某幾種)具體的檔案型別!它完全取決於程式設計者是用什麼方式開啟檔案的。比如,同樣乙個文字檔案,如果用隨機方式開啟,它就是隨機檔案,用順序方式開啟,它就是順序檔案,用二進位制方式開啟,它就是二進位制檔案。

而且不單是文字檔案,任何型別的檔案(包括exe可執行檔案)都可以用vb用隨機、順序或二進位制的方式開啟的,區別只在於開啟後的使用效果有可能千差萬別而已。

所以別費心機去找具體的所謂「隨機檔案」了,因為它不是檔案型別,而是檔案開啟方式!就像你拿著乙隻活雞說:「我怎麼沒看見宮保雞丁?」

如何用vb產生乙個每次都不一樣的隨機數啊,用rnd的話只能產生乙個固定的數字

6樓:南瓜蘋果

第一種方式: 使用無引數的random()建構函式;

預設種子值是使用作為種子值的,如果觸發random函式間隔時間很短,就有可能造成產生一樣的隨機數。

第二種方式: 使用rngcryptoserviceprovider生成種子值;生成速度較慢。

1、random()

使用與時間相關的預設種子值,初始化 random 類的新例項。

2、random(int32)

使用指定的種子值初始化 random 類的新例項。

引數為種子值,資料型別為int32,用來計算偽隨機數序列起始值的數字。 如果指定的是負數,則使用其絕對值。

random類生成隨機數是偽隨機數,所以在random的內部產生機制中還是有一定規律的,並非是真正意義上的完全隨機。 如果種子值相同則每次均產生相同的隨機數。

7樓:匿名使用者

必須抄要初始化:randomize。沒有種子。出來的資料肯定是固定的。

randomize 語句示例。

本示例用 randomize 語句初始化隨機數生成器。由於忽略了數值引數, 所以 randomize 用 timer 函式的返回值作為新的隨機數種子值。

dim myvalue

randomize ' 對隨機數生成器做初始化的動作。

myvalue = int((6 * rnd) +1) '生成 1 到 6 之間的隨機數值。

8樓:匿名使用者

'需要先使用。

randomize ' 對隨機數生成器做初始化的動作。

但不能儲存絕對不重複。

你說的每次應該是有限的,產生的數是有範圍的,數量的個數就是有限的,根據抽屜原理,總有重複的時候。

除非……

vb中 隨機檔案是什麼意思?說詳細點

9樓:網海1書生

隨機檔案是把檔案按指定的長度劃分為若干個長度相等的「檔案塊」,你可以從中任意取出一塊,也可以增加、修改或刪除其中的任意一塊,其作用類似於資料庫;

順序檔案則一般是按「行」為單位來進行讀取的,由於每行的長度一般而言長度都是不相同的,所以你無法從中直接任意取出某一行,只能從頭至尾順序讀取,直到你需要的那行為止,一般常見的文字檔案都屬於順序檔案。

當然,順序檔案和隨機檔案只是讀取檔案的方式不同,與檔案的本質並不相關的,比如同樣的乙個文字檔案,當用順序方式開啟(即按行讀取)時,它是順序檔案,而用隨機方式開啟(即按指定的位元組長度讀取)時,它是隨機檔案。

產生[10,37]之間的隨機整數的vb表示式是什麼

10樓:厲雲德世甲

13-rnd*24

int(rnd(1)+4)產生的是[4,5)的數。

int(rnd()*12)+7)產生的是[-5,7)之間的數。

我數學不好,兩個相乘自己算。

vb可以產生30—50之間的隨機整數的表示式

11樓:戴瀾高闌

答案是a.

rnd返回[0,1)範圍內的純小數,可取0值,但不會取1值所以,rnd*21的範圍是[0,21),rnd*21+30的範圍是[30,51),int (rnd*21+30)的範圍是[30,50]間的整數。

js怎麼產生隨機數,Js怎麼產生隨機數?

js可以用math.random 函式產生隨機數,這裡以產生1到5之間的隨機數為例。1 產生最小到最大之間的函式,包括最小值和最大值,即 min r max 2 產生最小到最大之間的函式,包括最小值但不包括最大值,即 min r max 3 產生最小到最大之間的函式,不包括最小值但包括最大值,即 m...

VB隨機數問題

做2個陣列,rndmon 11 放12個月份,rndday 30 放31天,窗體上放個按鈕,把我 複製過去執行下 private sub command1 click 定義dim rndmon 11 as integerdim rndday 30 as integerdim i as integer...

隨機數是如何產生的,EXCEL如何產生隨機數?

1.include include inxlude int main void 2.rand n將返回 0,n 區間內的整數如 rand 100 將返回乙個不小於0,並且小於100的整數rand 上界 下界 下屆 將返回 下屆,上界 區間內的整數 示例 include include inxlude...