V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
V2EX  ›  play78  ›  全部回复第 19 页 / 共 19 页
回复总数  361
1 ... 10  11  12  13  14  15  16  17  18  19  
2015 年 10 月 12 日
回复了 BROWNURSIDAE 创建的主题 程序员 VB 21 点游戏的问题
其实这个不用那么复杂的,最简单的办法是 先按顺序写入,然后随机交换位置就可以了,这样就可以保证不重复了,对于几十个数来说,效率也不是很低,随机性也还可以。

Private Sub Command1_Click()
Randomize
Dim pk(55) As Integer
Dim ss As String
'52 张按顺序摆放
For i = 1 To 52
pk(i) = i
Next i
'随机打乱
For i = 1 To 1000
t1 = Int(Rnd() * 52 + 1)
t2 = Int(Rnd() * 52 + 1)
a = pk(t1)
pk(t1) = pk(t2)
pk(t2) = a
Next i
'输出
For i = 1 To 52
ss = ss + Str(pk(i)) + " "
Next i
Print ss
End Sub
这样是不是好理解多了。
1 ... 10  11  12  13  14  15  16  17  18  19  
About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3359 Online   Highest 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 16ms · UTC 12:40 · PVG 20:40 · LAX 05:40 · JFK 08:40
♥ Do have faith in what you're doing.