我 把a到到z 每個定義一個數字
A 1
B 2
C 3
D 4
E 5
F 6
G 7
H 8
I 9
J 10
K 11
L 12
M 13
N 14
O 15
P 16
G 17
R 18
S 19
T 20
U 21
V 22
W 23
X 24
Y 25
Z 26
就是成了1-26 一共26個數字了
申報了一個26數字陣列 dim x(26) as int
請問如何 隨機打亂1 -26 這26個數字成亂序 , 再把新的順序存入陣列啊?
感謝了啊
uj5u.com熱心網友回復:
參考:Sub test()
Dim w1 As String, w2 As String, k As Integer
w1 = "abcdefghijklmnopqrstuvwxyz"
Do
If Len(w1) = 1 Then Exit Do
k = Int(Rnd * Len(w1)) + 1
w2 = w2 & Mid$(w1, k, 1)
w1 = Left$(w1, k - 1) & Right$(w1, Len(w1) - k)
Loop
w2 = w2 & w1
Debug.Print w2
End Sub
.
uj5u.com熱心網友回復:
Sub Main()
Dim x(1 To 26) As Integer
Dim i As Long
Dim j As Long
Dim temp As Integer
'初始化陣列'
For i = 1 To 26
x(i) = i
Next
'常用的洗牌演算法,就是隨機交換'
Randomize
For i = 1 To 26
j = 1 + Int(Rnd() * 26)
temp = x(i)
x(i) = x(j)
x(j) = temp
Next
'輸出'
For i = 1 To 26
Debug.Print i, x(i)
Next
End Sub
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/108059.html
標籤:VB基礎類
上一篇:CorelDraw VBA 線條上的位置坐標求助【續】
下一篇:VB串口通信,發送資料
