vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Mails senden, abrufen und decodieren - ganz easy ;-)  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Re: Frage zu tipps und tricks / lotto 4 aus 49 
Autor: CyberDreams
Datum: 09.07.04 11:55

Ich hab hier mal was zusammengebastelt. Sortfunktion kommt aus den T&T's
Option Explicit
 
 
' Auf der Form befinden sich:
' 1x CommandButton    'cmdStart'   mit Caption 'Ziehung'
' 6x Label            'Label1' mit Indexe von 1-6
 
 
Private Sub cmdStart_Click()
Dim bFound  As Boolean
Dim i       As Integer
Dim j       As Integer
Dim iValue  As Integer
Dim aiArr() As Integer
 
  ReDim aiArr(0)
  ' 6 Zahlen ziehen
  For i = 1 To 6
    Do
      Call Randomize(Timer)
      iValue = CInt(Rnd() * 49 + 1)
      bFound = False
      ' Array durchgehen und bei doppeltem Eintrag neue Zufallszahl
      For j = 1 To UBound(aiArr)
        If iValue = aiArr(j) Then
          bFound = True
          Exit For
        End If
      Next j
      If Not bFound Then Exit Do
    Loop
    ' Zahl in Array eintragen
    ReDim Preserve aiArr(UBound(aiArr) + 1)
    aiArr(UBound(aiArr)) = iValue
  Next i
 
  ' Array sortieren
  Call QuickSort(aiArr, 1)
 
  ' Ausgabe in die Labels
  For i = 1 To UBound(aiArr)
    Label1(i).Caption = aiArr(i)
  Next i
 
End Sub
 
 
Public Sub QuickSort(vSort As Variant, Optional ByVal lngStart As Variant, _
  Optional ByVal lngEnd As Variant)
 
  ' Wird die Bereichsgrenze nicht angegeben,
  ' so wird das gesamte Array sortiert
 
  If IsMissing(lngStart) Then lngStart = LBound(vSort)
  If IsMissing(lngEnd) Then lngEnd = UBound(vSort)
 
  Dim i As Long
  Dim j As Long
  Dim h As Variant
  Dim x As Variant
 
  i = lngStart: j = lngEnd
  x = vSort((lngStart + lngEnd) / 2)
 
  ' Array aufteilen
  Do
 
    While (vSort(i) < x): i = i + 1: Wend
    While (vSort(j) > x): j = j - 1: Wend
 
    If (i <= j) Then
      ' Wertepaare miteinander tauschen
      h = vSort(i)
      vSort(i) = vSort(j)
      vSort(j) = h
      i = i + 1: j = j - 1
    End If
  Loop Until (i > j)
 
  ' Rekursion (Funktion ruft sich selbst auf)
  If (lngStart < j) Then QuickSort vSort, lngStart, j
  If (i < lngEnd) Then QuickSort vSort, i, lngEnd
 
End Sub
Liebe Grüße

CyberDreams
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Frage zu tipps und tricks / lotto 4 aus 491.092dosman09.07.04 10:12
wie bau ich bubble sort ein551dosman09.07.04 10:49
Re: Frage zu tipps und tricks / lotto 4 aus 49614Lord Of Trance09.07.04 11:23
Re: Frage zu tipps und tricks / lotto 4 aus 49557dosman09.07.04 11:27
Re: Frage zu tipps und tricks / lotto 4 aus 49801Lord Of Trance09.07.04 14:58
Re: Frage zu tipps und tricks / lotto 4 aus 49605CyberDreams09.07.04 11:55
Danke an Euch alle (ot)549dosman09.07.04 19:20

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel