[問題]亂數取3個

看板Web_Design作者 (翔翔)時間18年前 (2007/10/18 03:14), 編輯推噓3(300)
留言3則, 3人參與, 最新討論串1/1
大家好,我又來發問了…@@!以下是asp程式語法 txt=10 dim aSum(2) k=0 while k<3 Randomize() a=1+int(rnd()*txt) aSum(k)=a k=k+1 wend 但這樣仍然會有重複,因為沒有比對,但我加了比對後,變成輸出只有某一特定數字… 如下: 1 txt=10 2 dim aSum(2) 3 k=0 4 5 while k<3 6 Randomize() 7 a=1+int(rnd()*txt) '1~最大筆數 8 aSum(k)=a '5,10,2 9 for j=0 to uBound(aSum) 10 if aSum(j)=a then 11 aSum(j)="" 12 else 13 k=k+1 14 end if 15 next 16 k=k+1 17 wend = =,後來發現,因為第10行,第一次比對時, 本來就會跟第8行求出的隨機數字一樣,所以三次輸出,都會一樣…> <… 後來我就想,大概是要三次隨機數字都存入aSum陣列之後, 再作資料比對…但是,若是比對有重複,又要再跑隨機?= = 我卡住了…> <!有沒有高手可以提示我,該怎麼作…?嗚~~~ -- 朝叩朱門吃餘餐 嗟來冷眼有德顏 歸途踏盡金磚路 漫天彩霞不用錢 吾乃…富貴乞丐-花爵百鍊生 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.67.54.148

10/18 03:51, , 1F
aSum(k)=a擺在比對後就好啦
10/18 03:51, 1F

10/18 14:18, , 2F
Randomize 移到while外面
10/18 14:18, 2F

10/18 20:16, , 3F
直接把1-10放進某個陣列,然後打亂該陣列排序,最後取前三
10/18 20:16, 3F
文章代碼(AID): #175byG3s (Web_Design)