vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

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

Visual-Basic Einsteiger
Re: Zeilen mit Kombinationen vergleichen ??? 
Autor: Manfred X
Datum: 07.04.14 12:01

Option Explicit
 
Private Type NumberDistanceType
    number As Integer
    Position As Integer
    Distance As Integer
End Type
 
Dim NumberRegister() As NumberDistanceType
 
Private Sub RegisterNumber(ByVal number As Integer, ByVal Position As Integer)
 
      'Registrierung einer Zahl (Number) incl. zeilennummer (Position)
      'und Ermittlung der Distanz zum vorherigen Auftreten dieser Zahl ( 
      ' Distance)
 
      Dim i%, pos%, found As Boolean
 
      For i = UBound(NumberRegister) To 0 Step -1
          If NumberRegister(i).number = number Then
             found = True: pos = NumberRegister(i).Position
             Exit For
          End If
      Next i
 
      i = UBound(NumberRegister) + 1
      ReDim Preserve NumberRegister(i)
      With NumberRegister(i)
         .number = number
         .Position = Position
         If found Then
            .Distance = Position - pos
         End If
      End With
End Sub
 
Private Function NumLen(ByVal number As Integer, _
                       minlen As Integer) As String
 
    NumLen = CStr(number)
    While Len(NumLen) < minlen
        NumLen = " " & NumLen
    Wend
End Function
 
 
Public Sub NumberDistance(ByVal file_in As String, _
                          ByVal Start As Integer, ByVal Ende As Integer, _
                          ByVal file_out As String)
 
 
Dim ik%, ak%  'Kanäle
Dim line As String, fields() As String 'Dateizeile
Dim dateval%  'Datum in Zeile
Dim number As Integer
 
Dim i As Integer, k As Integer 'Loopings
Dim z As Integer ' Ziehungszähler
 
'Zeit-Interval sicher stellen
If Ende < Start Then
   i = Start
   Start = Ende
   Ende = i
End If
 
ReDim NumberRegister(0)
 
ik = FreeFile
Open file_in For Input As #ik
 
While Not EOF(ik)
   Line Input #ik, line
   z = z + 1
   'numerische Felder in einer Zeile
   fields = Split(line, " ")
   'Check
   If Not UBound(fields) = 7 Then Stop
   'Datumsfeld
   dateval = CInt(fields(0))
   'Zeitfilter
   If dateval >= Start And dateval <= Ende Then
      'Häufigkeitszähler füllen
      For i = 1 To 7
          number = CInt(fields(i))
          If number > 0 Then
             Call RegisterNumber(CInt(fields(i)), z)
          End If
      Next i
   End If
Wend
Close #ik
 
QuickSort NumberRegister, 0, UBound(NumberRegister)
 
ak = FreeFile
Open file_out For Output As #ak
 
Print #ak, file_in
Print #ak, "von  "; Start; " bis "; Ende
Print #ak, "Gelesene Zeilen: "; z
Print #ak, "Registrierte Zahlen: "; UBound(NumberRegister)
Print #ak, ""
 
For i = 1 To UBound(NumberRegister)
    With NumberRegister(i)
        Print #ak, NumLen(.Position, 3); ".) Zahl: "; NumLen(.number, 3);
        If .Distance > 0 Then
            Print #ak, "  Distanz: "; NumLen(.Distance, 3)
        Else
            Print #ak, ""
        End If
    End With
Next i
Close #ak
 
End Sub
 
Private Sub QuickSort(Sort() As NumberDistanceType, ByVal Start%, ByVal Ende%)
 
  Dim i%, j%
  Dim h As NumberDistanceType
  Dim x As NumberDistanceType
 
  i = Start: j = Ende
  x = Sort((Start + Ende) / 2)
 
  Do
    While comparend(Sort(i), x) < 0: i = i + 1: Wend
    While comparend(Sort(j), x) > 0: j = j - 1: Wend
 
    If (i <= j) Then
      h = Sort(i)
      Sort(i) = Sort(j)
      Sort(j) = h
      i = i + 1: j = j - 1
    End If
  Loop Until (i > j)
 
  If (Start < j) Then QuickSort Sort, Start, j
  If (i < Ende) Then QuickSort Sort, i, Ende
End Sub
 
Private Function comparend(w1 As NumberDistanceType, w2 As NumberDistanceType) _
  As Integer
    comparend = 1
    If w1.number > w2.number Then Exit Function
    If w1.number = w2.number And _
       w1.Position > w2.Position Then Exit Function
    comparend = 0
    If w1.number = w2.number And _
       w1.Position = w2.Position Then Exit Function
    comparend = -1
End Function
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Zeilen mit Kombinationen vergleichen ???5.992JBL06.03.14 17:49
Re: Zeilen mit Kombinationen vergleichen ???3.956Manfred X06.03.14 18:15
Re: Zeilen mit Kombinationen vergleichen ???3.929JBL06.03.14 18:27
Re: Zeilen mit Kombinationen vergleichen ???4.103Manfred X06.03.14 19:06
Re: Zeilen mit Kombinationen vergleichen ???4.035JBL06.03.14 19:36
Re: Zeilen mit Kombinationen vergleichen ???4.020Manfred X06.03.14 19:45
Re: Zeilen mit Kombinationen vergleichen ???4.018JBL06.03.14 20:01
Re: Zeilen mit Kombinationen vergleichen ???3.943Manfred X06.03.14 20:18
Re: Zeilen mit Kombinationen vergleichen ???4.059JBL06.03.14 20:35
Re: Zeilen mit Kombinationen vergleichen ???4.004Manfred X06.03.14 20:55
Re: Zeilen mit Kombinationen vergleichen ???4.075JBL06.03.14 21:14
Re: Zeilen mit Kombinationen vergleichen ???3.917Manfred X06.03.14 22:01
Re: Zeilen mit Kombinationen vergleichen ???4.066JBL07.03.14 07:48
Re: Zeilen mit Kombinationen vergleichen ???3.886Manfred X07.03.14 11:41
Re: Zeilen mit Kombinationen vergleichen ???3.900JBL07.03.14 12:03
Re: Zeilen mit Kombinationen vergleichen ???3.978Manfred X07.03.14 12:40
Re: Zeilen mit Kombinationen vergleichen ???3.957JBL07.03.14 14:51
Re: Zeilen mit Kombinationen vergleichen ???4.082Manfred X07.03.14 16:32
Re: Zeilen mit Kombinationen vergleichen ???3.980JBL07.03.14 17:31
Re: Zeilen mit Kombinationen vergleichen ???3.960JBL07.03.14 17:40
Re: Zeilen mit Kombinationen vergleichen ???3.925JBL07.03.14 17:57
Re: Zeilen mit Kombinationen vergleichen ???3.939Manfred X07.03.14 18:07
Re: Zeilen mit Kombinationen vergleichen ???3.973Blackbox07.03.14 18:44
Re: Zeilen mit Kombinationen vergleichen ???3.968Manfred X07.03.14 19:36
Re: Zeilen mit Kombinationen vergleichen ???3.853JBL08.03.14 11:08
Re: Zeilen mit Kombinationen vergleichen ???3.887Manfred X08.03.14 16:19
Re: Zeilen mit Kombinationen vergleichen ???3.921JBL08.03.14 17:54
Re: Zeilen mit Kombinationen vergleichen ???3.793Manfred X08.03.14 17:59
Re: Zeilen mit Kombinationen vergleichen ???3.881JBL10.03.14 11:06
Re: Zeilen mit Kombinationen vergleichen ???3.951Manfred X10.03.14 12:58
Re: Zeilen mit Kombinationen vergleichen ???3.836JBL10.03.14 13:20
Re: Zeilen mit Kombinationen vergleichen ???3.911Manfred X10.03.14 13:26
Re: Zeilen mit Kombinationen vergleichen ???3.862JBL10.03.14 14:56
Re: Zeilen mit Kombinationen vergleichen ???4.066JBL24.03.14 11:06
Re: Zeilen mit Kombinationen vergleichen ???3.953Manfred X24.03.14 18:04
Re: Zeilen mit Kombinationen vergleichen ???3.867JBL24.03.14 20:25
Re: Zeilen mit Kombinationen vergleichen ???3.928Manfred X24.03.14 22:23
Re: Zeilen mit Kombinationen vergleichen ???4.190JBL25.03.14 05:54
Re: Zeilen mit Kombinationen vergleichen ???3.890JBL25.03.14 12:12
Re: Zeilen mit Kombinationen vergleichen ???3.859Manfred X25.03.14 16:07
Re: Zeilen mit Kombinationen vergleichen ???4.091JBL26.03.14 19:38
Re: Zeilen mit Kombinationen vergleichen ???3.928JBL27.03.14 14:41
Re: Zeilen mit Kombinationen vergleichen ???3.873Manfred X27.03.14 18:03
Re: Zeilen mit Kombinationen vergleichen ???4.004JBL27.03.14 18:22
Re: Zeilen mit Kombinationen vergleichen ???3.946Manfred X27.03.14 18:28
Re: Zeilen mit Kombinationen vergleichen ???4.155JBL27.03.14 18:39
Re: Zeilen mit Kombinationen vergleichen ???3.895Manfred X27.03.14 18:44
Re: Zeilen mit Kombinationen vergleichen ???3.898JBL27.03.14 19:11
Re: Zeilen mit Kombinationen vergleichen ???3.816Manfred X27.03.14 19:54
Re: Zeilen mit Kombinationen vergleichen ???3.905Franki29.03.14 01:19
Re: Zeilen mit Kombinationen vergleichen ???3.867Manfred X29.03.14 08:20
Re: Zeilen mit Kombinationen vergleichen ???3.872JBL30.03.14 17:23
Re: Zeilen mit Kombinationen vergleichen ???3.786Manfred X30.03.14 18:44
Re: Zeilen mit Kombinationen vergleichen ???3.801JBL30.03.14 19:10
Re: Zeilen mit Kombinationen vergleichen ???3.741Manfred X30.03.14 19:46
Re: Zeilen mit Kombinationen vergleichen ???3.827JBL30.03.14 19:59
Re: Zeilen mit Kombinationen vergleichen ???3.918Manfred X30.03.14 20:13
Re: Zeilen mit Kombinationen vergleichen ???3.723JBL31.03.14 05:42
Re: Zeilen mit Kombinationen vergleichen ???3.804JBL31.03.14 07:56
Re: Zeilen mit Kombinationen vergleichen ???3.838Manfred X31.03.14 08:55
Re: Zeilen mit Kombinationen vergleichen ???3.894JBL31.03.14 20:38
Re: Zeilen mit Kombinationen vergleichen ???3.701JBL07.04.14 10:34
Re: Zeilen mit Kombinationen vergleichen ???3.742Manfred X07.04.14 12:01
Re: Zeilen mit Kombinationen vergleichen ???3.810JBL07.04.14 14:15
Re: Zeilen mit Kombinationen vergleichen ???3.936Manfred X07.04.14 16:00
Re: Zeilen mit Kombinationen vergleichen ???3.871JBL07.04.14 19:47
Re: Zeilen mit Kombinationen vergleichen ???3.716Manfred X07.04.14 20:11
Re: Zeilen mit Kombinationen vergleichen ???3.704JBL07.04.14 20:28
Re: Zeilen mit Kombinationen vergleichen ???3.742JBL08.04.14 11:48
Re: Zeilen mit Kombinationen vergleichen ???3.874Manfred X08.04.14 14:05
Re: Zeilen mit Kombinationen vergleichen ???3.676JBL08.04.14 17:10
Re: Zeilen mit Kombinationen vergleichen ???3.721Manfred X08.04.14 20:28
Re: Zeilen mit Kombinationen vergleichen ???3.987JBL27.03.14 20:56
Re: Zeilen mit Kombinationen vergleichen ???3.836Manfred X27.03.14 21:02
Re: Zeilen mit Kombinationen vergleichen ???3.849JBL27.03.14 21:15
Re: Zeilen mit Kombinationen vergleichen ???3.925Manfred X27.03.14 21:19
Re: Zeilen mit Kombinationen vergleichen ???3.942JBL27.03.14 21:52
Re: Zeilen mit Kombinationen vergleichen ???3.833Manfred X27.03.14 22:18
Re: Zeilen mit Kombinationen vergleichen ???3.842JBL28.03.14 11:45
Re: Zeilen mit Kombinationen vergleichen ???3.686Blackbox08.04.14 17:53
Re: Zeilen mit Kombinationen vergleichen ???3.703JBL08.04.14 18:00
Re: Zeilen mit Kombinationen vergleichen ???3.853Franki09.04.14 01:00
Re: Zeilen mit Kombinationen vergleichen ???3.709Manfred X09.04.14 07:40
Re: Zeilen mit Kombinationen vergleichen ???3.815JBL09.04.14 12:29
Re: Zeilen mit Kombinationen vergleichen ???3.698JBL09.04.14 19:18
Re: Zeilen mit Kombinationen vergleichen ???3.700Manfred X10.04.14 08:39
Re: Zeilen mit Kombinationen vergleichen ???3.824JBL21.04.14 11:23
Re: Zeilen mit Kombinationen vergleichen ???3.813Franki09.04.14 00:55

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-2024 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