vbscript求救,生成隨機數問題

時間 2023-03-25 06:55:10

1樓:匿名使用者

請用下列函式返回:

' result()陣列用來存放生成的20個1~40的不重複隨機數。

private function showrnd(result() as integer)

dim temp(20) as integerdim result(20) as integerdim p, q as integer

dim isok as boolean

for p = 1 to 20

randomize

temp(p) =int(40 * rnd + 1)isok = false

do while not isok

for q = 1 to p

if temp(p) =temp(q - 1) thentemp(p) =int(40 * rnd + 1)isok = false

exit for

end if

isok = true

nextloop

result(p) =temp(p)

nextend function

vb關於隨機數的簡單問題

2樓:合萌茆綠凝

這個問題我研究過。

根據隨機函式rnd()可以返回一個(0,1)區間中的隨機小數,int((6*rnd)+1)是生成1到6之間的隨機數正確int((m*rnd)+n)是生成n到m之間的隨機數?錯誤事實上,int((m*rnd)+n)是生成n+m*0

到n+m*1-1

之間的數。即n到n+m-1之間的整數。用前例中的1和6套用也是正確的。

所以要生成n到m閉區間的整數,需要n+x-1=m解這個簡單方程就是x=m+1-n了。

造成這種問題的主要原因是int函式對正實數的操作可以理解成直接舍掉小數部分而不是四捨五入。

excel怎麼生成6位隨機數

飛喵某 1 首先開啟一個excel文件,選中任意一個單元格,在上方編寫公式 2 在excel中是使用rand函式可以生成隨機數,但是該函式預設是隻生成的範圍是0 1之間的隨機數,需要使用int函式來使隨機數強制轉換成整數,6位的隨機數需要在後面指定範圍為 900000 100000 具體的寫法是 i...

使用excel生成5位隨機數,Excel生成一列隨機數

在任一單元格輸入如下公式即可 rand 99999 10000 10000 單元格設定,小數位數為0.或者用round取整.按f9重新整理,會不斷隨即變化. 使用 randbetween 函式即可 要是無重複的話 就不能用這個了 大聖美猴王 用我的工具就可生成。 int rand 90000 999...

Excel生成0 1 2的隨機數,但是大於1 5的數為或者

首先把選項卡中的公式啟用迭代計算的勾打上。在b2單元格中錄入公式 if countif b2 b11,得到大於1.5的數為1個 如果要1.5的為1個或0個,用公式if or countif b2 b11,1.5 1,countif b2 b11,直接上圖,希望能幫到你 在a1中輸入或複製貼上下列公式...