Tipp 0053 Zufallszahlen - Lottogenerator
Autor/Einsender:
Datum:
  Detlev Schubert
05.05.2001
Entwicklungsumgebung:   VB 5
Zufallszahlen mit VB zu erzeugen ist recht einfach zu lösen. Dazu wird die Randomize-Anweisung verwendet, um den Zufallszahlengenerator mit einem Startwert zu initialisieren, der auf dem Systemzeitgeber basiert. Durch den Aufruf der Rnd-Funktion wird die Zufallszahl ermittelt.
Etwas schwieriger wird es, wenn wie in diesem Beispiel keine Zahl doppelt ermittelt werden darf. Dazu verwenden wir eine geschachtelte For/Next- und Do/Loop-Schleife.
Die erste Schleife durchläuft die Anzahl der Zahlen, die ermittelt werden müssen (hier 7, sechs + Zusatzzahl). In der Do/Loop-Schleife wird nun die Zufallszahl von 1 - 49 ermittelt, und mittels des Boolean-Werts "Vergleich" wird nun in der geschachtelten For/Next-Schleife geprüft, ob der gezogene Wert bereits ermittelt wurde.
 
Option Explicit

Private Sub Command1_Click(Index As Integer)
  Dim Zufall(1 To 7) As Byte
  Dim i As Byte, j As Byte
  Dim Vergleich As Boolean

  Select Case Index
    Case 1
      Randomize
      For i = 1 To 7
        Do
          Vergleich = False
          Zufall(i) = 1 + Int(Rnd * 49)
          For j = 1 To i - 1
            If Zufall(j) = Zufall(i) Then
              Vergleich = True
              Exit For
            End If
          Next
        Loop Until Not Vergleich
        Label1(i - 1).Caption = Zufall(i)
      Next i
  End Select
End Sub
 
Weitere Links zum Thema
Würfel

Windows-Version
95
98/SE
ME
NT
2000
XP
Vista
Win 7
VB-Version
VBA 5
VBA 6
VB 4/16
VB 4/32
VB 5
VB 6


Download  (2,1 kB) Downloads bisher: [ 3067 ]

Vorheriger Tipp Zum Seitenanfang Nächster Tipp

Startseite | Projekte | Tutorials | API-Referenz | VB-/VBA-Tipps | Komponenten | Bücherecke | VB/VBA-Forum | VB.Net-Forum | DirectX-Forum | Foren-Archiv | DirectX | VB.Net-Tipps | Chat | Spielplatz | Links | Suchen | Stichwortverzeichnis | Feedback | Impressum

Seite empfehlen Bug-Report
Letzte Aktualisierung: Montag, 29. August 2011