vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Top-Preis! AP-Access-Tools-CD Volume 1  
 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: Zahlenkombinationen generieren ??? 
Autor: Preisser
Datum: 27.05.11 13:55

Hi,

stimmt, sorry. Das kommt davon, wenn man kein VB6 mehr gewohnt ist. Das liegt daran, dass VB bei boolschen Ausdrücken den Ausdruck komplett auswertet, anstatt abzubrechen, wenn das Ergebnis bereits feststeht (wie es C-artige Sprachen machen).

Versuch es so:
Public Sub GenerateZahlen(Arrs() As ArrayWrapper, Dateiname As String)
    Dim FileNr As Long
    FileNr = FreeFile
    Open Dateiname For Output As FileNr ' Datei öffnen
    Dim i As Long, j As Long
    Dim AktAnzahlZahlen As Long
    Dim Indizes() As Long, Zahl() As Long
    ReDim Indizes(UBound(Arrs))
    ReDim Zahl(UBound(Arrs))
    Dim ZahlKommtBereitsVorIndex As Long
    Dim LetzterAufruf As Long
    Do While Indizes(0) <= UBound(Arrs(0).Arr)
        Dim AktTickCount As Long
        AktTickCount = GetTickCount()
        If LetzterAufruf + 100 <= AktTickCount Or LetzterAufruf > _
          AktTickCount Then  '100 ms abstand
            LetzterAufruf = AktTickCount
            ProgressBar1.Value = 100 * (Indizes(0) + 1) / (UBound(Arrs(0).Arr) _
              + 1)
            DoEvents
        End If
 
        Dim VorigerWeiterschaltungsIndex As Long
        VorigerWeiterschaltungsIndex = ZahlKommtBereitsVorIndex
        ZahlKommtBereitsVorIndex = -1
        For i = VorigerWeiterschaltungsIndex To UBound(Arrs)
            Zahl(i) = Arrs(i).Arr(Indizes(i))
            If i > 0 And i < UBound(Arrs) Then
                If Zahl(i - 1) >= Zahl(i) Then
                    ZahlKommtBereitsVorIndex = i
                    Exit For
                End If
            Else
                Dim Rausgehen As Boolean
                Rausgehen = False
                For j = 0 To i - 1
                    If Zahl(j) = Zahl(i) Then
                        ZahlKommtBereitsVorIndex = i
                        Rausgehen = True
                        Exit For
                    End If
                Next
                If Rausgehen Then Exit For
            End If
        Next
 
        If ZahlKommtBereitsVorIndex < 0 Then
            ' Zahl in Datei schreiben
            WriteLine FileNr, Zahl
            AktAnzahlZahlen = AktAnzahlZahlen + 1
            ZahlKommtBereitsVorIndex = UBound(Arrs)
        End If
 
        'Weiterschalten
        Indizes(ZahlKommtBereitsVorIndex) = Indizes(ZahlKommtBereitsVorIndex) + _
          1
        For i = ZahlKommtBereitsVorIndex To 1 Step -1
            If Indizes(i) > UBound(Arrs(i).Arr) Then
                Indizes(i) = 0
                Indizes(i - 1) = Indizes(i - 1) + 1
            Else
                Exit For
            End If
        Next
    Loop
    Close FileNr 'Datei schließen
End Sub
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Zahlenkombinationen generieren ???2.073JBL18.05.11 11:48
Re: Zahlenkombinationen generieren ???1.263JBL18.05.11 12:48
Re: Zahlenkombinationen generieren ???1.242Dirk18.05.11 13:05
Re: Zahlenkombinationen generieren ???1.260JBL18.05.11 15:51
Re: Zahlenkombinationen generieren ???1.218Zardoz18.05.11 16:43
Re: Zahlenkombinationen generieren ???1.189JBL18.05.11 18:22
Re: Zahlenkombinationen generieren ???1.203JBL19.05.11 09:48
Re: Zahlenkombinationen generieren ???1.257Preisser19.05.11 12:35
Re: Zahlenkombinationen generieren ???1.345JBL19.05.11 14:37
Re: Zahlenkombinationen generieren ???1.304Preisser19.05.11 14:51
Re: Zahlenkombinationen generieren ???1.154JBL19.05.11 16:10
Re: Zahlenkombinationen generieren ???1.283Preisser19.05.11 17:58
Re: Zahlenkombinationen generieren ???1.170JBL19.05.11 18:25
Re: Zahlenkombinationen generieren ???1.299Preisser19.05.11 18:55
Re: Zahlenkombinationen generieren ???1.145JBL19.05.11 19:25
Re: Zahlenkombinationen generieren ???1.209Preisser19.05.11 19:39
Re: Zahlenkombinationen generieren ???1.189JBL19.05.11 19:44
Re: Zahlenkombinationen generieren ???1.177Preisser19.05.11 19:52
Re: Zahlenkombinationen generieren ???1.187JBL19.05.11 20:16
Re: Zahlenkombinationen generieren ???1.188Dirk19.05.11 11:14
Re: Zahlenkombinationen generieren ???1.232JBL19.05.11 21:39
Re: Zahlenkombinationen generieren ???1.147Preisser19.05.11 22:47
Re: Zahlenkombinationen generieren ???1.173JBL20.05.11 05:48
Re: Zahlenkombinationen generieren ???1.191JBL20.05.11 06:39
Re: Zahlenkombinationen generieren ???1.214JBL20.05.11 06:57
Re: Zahlenkombinationen generieren ???1.226Preisser20.05.11 13:19
Re: Zahlenkombinationen generieren ???1.081JBL22.05.11 12:30
Re: Zahlenkombinationen generieren ???1.140JBL24.05.11 21:25
Re: Zahlenkombinationen generieren ???1.054Preisser24.05.11 21:31
Re: Zahlenkombinationen generieren ???1.093JBL24.05.11 22:19
Re: Zahlenkombinationen generieren ???1.111Preisser25.05.11 00:25
Re: Zahlenkombinationen generieren ???1.097JBL25.05.11 06:52
Re: Zahlenkombinationen generieren ???1.063Preisser26.05.11 13:08
Re: Zahlenkombinationen generieren ???1.103JBL26.05.11 15:03
Re: Zahlenkombinationen generieren ???1.112Preisser26.05.11 15:24
Re: Zahlenkombinationen generieren ???1.083JBL26.05.11 16:14
Re: Zahlenkombinationen generieren ???1.083Preisser26.05.11 23:55
Re: Zahlenkombinationen generieren ???1.061JBL27.05.11 06:55
Re: Zahlenkombinationen generieren ???1.149Preisser27.05.11 13:55
Re: Zahlenkombinationen generieren ???1.078JBL28.05.11 18:45

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