Zufallsgenerator
09.11.2004 11:12:59
Sascha
ich habe folgendes Problem: Ich verusche einen Zufallsgenerator zu schreibne, der mir die Zahlen von 1-100 zufällig verteilt ausgibt. Dabei soll jedoch jede Zahl nur genau 1 mal vorkommen (also keine Zahl 2 mal oder öfter!).
Ich habe mir dazu folgendes ausgedacht:
- Ich erstelle einen Zufallwert
- Ich prüfe ob der Zufallswert in einem Array vorkommt
- Wenn dies nicht der Fall ist, gebe ich den Zufallswert aus und Packe ihn in das Array, welches der Überprüfung dient.
- Quelltext s.u.
Aber warum funktioniert das nicht? Habe ich da irgendwo einen Denkfehler gemacht? Oder stimmt etwas mit der Syntax nicht?
HILFEE!!!!
-----------------------------------------------------------------------------
Sub Zufallswerte()
Dim Zufallswert As Integer
Dim Array_Zufallswerte(200) As Integer
Dim Pruefwert As Variant
Dim Stelle As Integer
Dim LoopVar_1 As Integer
LoopVar_1 = 0
Randomize
Do While (LoopVar_1 <= 99)
Stelle = 0
Do
Zufallswert = (Rnd * 100)
For Each Pruefwert In Array_Zufallswerte
If (Array_Zufallswerte(LoopVar_2) = Zufallswert) Then
Zufallswert = (-1)
Exit For
End If
Next
If (Zufallswert <> -1) Then
Array_Zufallswerte(Stelle) = Zufallswert
Stelle = (Stelle + 1)
End If
Loop While (Zufallswert = -1)
Range("A" & (LoopVar_1 + 3)).Value = (Zufallswert)
LoopVar_1 = (LoopVar_1 + 1)
Loop
End Sub
----------------------------------------------------------------------------