Hej! Jag kom visst på det! Hej Tjenmare SvenPon. Kan inte låta bli att klaga. Förlåt i förväg. Hej Hej! Hej Blanda en array
Nu står det riktigt still i huvudet.
Jag har en array 0-14 som innehåller värdena 1-15 jag måste blanda dessa vid knapp tryckning olika resultat vill jag givetvis ha!
MVH RobinSv: Blanda en array
Här är koden om nån vill ha :
Private Sub Command1_Click()
' Blanda Array
Randomize
Dim Nummer, i As Integer
Dim arNummer(15) As Integer
For i = 0 To 14
arNummer(i) = i + 1
Next i
slump:
Dim Temp As Integer
Dim slump As Integer
For i = 0 To 14
slump = Int((Rnd * 14) + 1)
Temp = arNummer(i)
arNummer(i) = arNummer(slump)
arNummer(slump) = Temp
Next i
For i = 0 To 14
List1.AddItem (arNummer(i))
Next i
End SubSv: Blanda en array
Ett annat sätt att lösa din slumsortering
Private Sub Command1_Click()
' Blanda Array
Randomize
Dim slump As Long, i As Long
Dim arNummer(15) As Variant
Do Until i >= 15
slump = Int((Rnd * 14) + 1)
If IsEmpty(arNummer(slump)) Then
List1.AddItem slump
i = i + 1
End If
Loop
End Sub
mvh
SvenSv: Blanda en array
Men kan det inte förekomma dubletter i ditt fall?
Skulle den inte blanda befintliga värden?
Hoppas du kan förlåta mig... :O)Sv: Blanda en array
Det blev lite snabbt och fel,principen är riktig
så här borde det funka bättre.
Private Sub Command1_Click()
' Blanda Array
Randomize
Dim slump As Long, i As Long
Dim arNummer(16) As String
List1.Clear
Do Until i >= 15
slump = Int((Rnd * 15) + 1)
If arNummer(slump) = "" Then
arNummer(slump) = "x"
List1.AddItem slump
i = i + 1
End If
Loop
End Sub
Mvh
SvenSv: Blanda en array
Jag funderar på en sak. Är det inte bättre att ha variabeln arNummer(16) som boolean istället för string? Då byter man ut raderna
If arNummer(slump) = "" Then
arNummer(slump) = "x"
mot
If arNummer(slump) = false Then
arNummer(slump) = true
eller har jag fel?
/IvarSv: Blanda en array
Du har säkert rätt jag gjorde exemplet ur
minnet,inte helt genomtänkt.
Bra den köper vi för framtida bruk
Ha det
Sven