精華區beta Visual_Basic 關於我們 聯絡資訊
※ 引述《eyayaya (\ __ / <-- ZIP)》之銘言: : 也是樂透的問題 : 用亂數選六個數字怎麼才能六個都不一樣呢? : 謝謝請指教 假設樂透是1-42 做法1:檢查之前已經選出的數字 Dim i As Integer, j As Integer Dim isUsed As Boolean Dim R(1 to 6) As Integer Dim tmpN As Imteger '(R的索引為了方便故用1到6) Randomize For i = 1 To 6 Do isUsed = False tmpN = Int(Rnd * 42 + 1) For j = 1 To i If R(j) = tmpN Then isUsed = True Exit For End if Next j Loop While isUsed R(n) = tmpN Next i 做法2:用42項陣列紀錄哪些是用過的數字 Dim i As Integer, tmpN As Integer Dim N(1 to 42) As Boolean, R(1 to 6) As Integer Randomize For i = 1 To 6 Do tmpN = Int(Rnd * 42 + 1) Loop While N(tmpN) N(tmpN) = True R(i) = tmpN Next i 這兩個的R()就是結果 因為是直接打的,如果有錯就指正一下吧... -- ┌╤═╮╤╮ ╤╭╤═╮╤ ╭═╭╤═╮╭══╮ 杜 ║║ ║║║ ║║║ ║╟═╯ ╟╧═╢╰╤═╮ 姆 └╧═╯╰╧═╯╧╰ ╧╧ ╰═╧ ╧─╧═╯ 卡 -- ※ 發信站: 批踢踢實業坊(ptt.csie.ntu.edu.tw) ◆ From: 61.216.80.18 ※ 編輯: Dumkas 來自: 61.216.80.18 (05/02 17:53)