Patrick_erlangen Geschrieben 26. Februar 2007 Geschrieben 26. Februar 2007 Hallo, ich habe eine Datei, die ich sequenziell einlesen will --> Inhalt: test.txt ----------- A Inhalt Inhalt Inhalt A Inhalt Inhalt A Inhalt Inhalt Inhalt A ...etc... Das heisst, ich will einen Gruppenwechsel ("A") programmieren: Lösung: Pseudocode: #Gruppenwehchsel = "A" (R1)Read (File) #zeile until eof * if #zeile = gruppenwechsel an not 1.satz goto (R1) end if * call zeilen-intabelle-speichern * if #zeile = gruppenwechsel and 1.satz call tabelle ausgeben else 1.satz = true end if * end-read * // letzen Satz nachlesen * if 1.Satz // Datei ist nicht leer call tabelle ausgeben end if Ich möchte das Ganze möglichst in eine rekursive Funktion packen, habe vor längerer Zeit schon mal einen Standard hierfür gefunden, aber ...:-). Die Funktion soll eine variable Anzahl an Gruppenwechseln beinhalten. Wichtig hierbei ist, dass auch der erste und letzte Satz richtig verarbeitet wird. Ich habe schon mal etwas bei normierter Programmierung gefunden. Kann mir jemand eine Lösung geben, die beliebig viele Gruppenwechsel unterstützt? Grüße Patrick
Guybrush Threepwood Geschrieben 26. Februar 2007 Geschrieben 26. Februar 2007 Ich glaube mit dem Folgenden spreche ich für jeden der das gelesen hat: Hä??
Patrick_erlangen Geschrieben 26. Februar 2007 Autor Geschrieben 26. Februar 2007 ich meine das: Arbeitsblätter zur Wirtschaftsinformatik eben nur variabel.... Grüße Patrick
Klotzkopp Geschrieben 26. Februar 2007 Geschrieben 26. Februar 2007 Die Funktion soll eine variable Anzahl an Gruppenwechseln beinhalten.Eine variable Anzahl sollte doch kein Problem sein. Oder meinst du eine variable (also vorher nicht bekannte) Verschachtelungstiefe? Das gibt deine Datei aber gar nicht her, da gibt es nur eine Stufe.
Patrick_erlangen Geschrieben 26. Februar 2007 Autor Geschrieben 26. Februar 2007 ja genau, es kann ja mal sein dass ich die Funktion für eine Datei hernehmen will, in der ein zwei oder dreistufiger gruppenwechsel ist...., sprich ich baue eine routine in der die ganzen gruppenkriterien abgefragt werden bevor ich die Einzelverarbeitung starte...die Frage ist eben nur: wie :-)
Klotzkopp Geschrieben 26. Februar 2007 Geschrieben 26. Februar 2007 Merk dir die Kriterien (Name und Wert) in einer dynamischen Datenstruktur, z.B. vector. Zusätzlich merkst du dir in einer int-Variablen die "Tiefe" der aktuellen Zeile. Du musst wissen, welchem Kriteriennamen (oder welcher Tiefe) die "Blätter" des Baums (also die tiefsten Einträge) zugeordnet sind. Bei jeder eingelesen Zeile entscheidest du dann anhand des Kriteriennamen, ob es ein Schritt nach innen (++tiefe) oder außen (--tiefe) oder nur ein neuer Wert für die aktuelle Tiefe, oder Daten für die Einzelverarbeitung sind (siehe oben). Rekursion würde ich da nicht benutzen.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden