vb不重复的0-9随机生成在9宫格内

来源:百度知道 编辑:UC知道 时间:2024/05/21 17:35:01
0-9这9个数字 不重复的随机生成在9宫里

0-9好象是10个数字
用一个数组来存这10个数字
随便建一个数组
调用方法如下:
例如:private sub form_load
dim a%()
rnds a
end sub
sub rnds(data%())
randomize
dim I%,J%,NB%,N as boolean
redim data(0 to 9)
for i=0 to 9
data(i)=-1
next i
for i=0 to 9
n=false
nb=int(rnd * 10)
do until n
for j=0 to 9
if data(j)=nb then nb=int(rnd * 10):exit for
next j
if j=10 then n=true
loop
data(i)=nb
next i
end sub

遇见重复的去掉就行了
dim a(1 to 9)
randomize
for i=1 to 9
a(i)=int(rnd()*9)+1
for j=i to 1 step -1
if a(i)=a(j) then
i=i-1'这样,如果a(i)跟之前任何一个重复了,下次循环的时候,会重新给a(i)赋值
exit for
next
next

Private Sub Command1_Click()
Dim x(1 To 9) As Integer
Cls
gezi
For i = 1 To 9
x(i) = i
Next i
For i = 0 To 8
Do
Randomize
n = Int(Rnd * (9 - i)) + 1
Loop Until n <> 0
CurrentX = (i Mod 3) * 1