Pseudocode Schleifenproblem

1Antworten
  1. #1
    Avatar von telecaster95
    telecaster95 ist offline
    Themen Starter

    Title
    Benutzer
    seit
    11.04.2011
    Ort
    /home/tele
    Beiträge
    1.617

    Standard Pseudocode Schleifenproblem

    Hallo,
    ich habe ein denktechnisches Programmierproblem und hoffe ihr könnt mir mit etwas Pseudocode aushelfen
    Und zwar folgendes:
    Ich habe eine XML Datei die eine Liste von Mitarbeitern beschreibt und ein Array mit Mitarbeiterobjekten(eigene Klasse), mit Eigenschaften wie Name, Vorname, etc.
    Jetzt müssen die Daten aus der XML Datei in meine Objekte rein. Leider weis ich die genaue Anzahl der Mitarbeiter nicht, sodass ich zu sämtlichen Möglichkeiten kompatibel sein muss. Soweit bin ich:

    Code:
    Schleife für jedes Mitarbeiterobjekt(wird für jedes O. einmal durchlaufen) {
         Überprüfung(z.B. Vorname in aktueller XML Zeile vorhanden?) {
            Wenn ja, schreibe Name in Objekt, Nein, laufe weiter
         }
    }
    Problem hierbei ist, Beispiel: 4 Mitarbeiter. Jetzt bekommt jeder Mitarbeiter den ersten gefundenen Namen zugeteilt, aber nicht den nächsten.

    Wie kann ich das Lösen?

    Echter Code(Objective C):
    Code:
    int itemCount = 0;
        for (int i = 0; i < newData.count; i++) {
            if([[newData objectAtIndex:i]rangeOfString:@"Aushilfe"].location != NSNotFound)
                itemCount++;
            NSLog(@"%@", [newData objectAtIndex:i]);
        }
        mitarbeiter = [[NSMutableArray alloc]initWithCapacity:itemCount];
        for (int i = 0; i < itemCount; i++)
            [mitarbeiter addObject:[[Mitarbeiter alloc]init]];
        int lastPlace = 0;
        int currPlace = 0;
        for (int i = 0; i < mitarbeiter.count; i++) {
            for (int j = 0; j < newData.count; j++) {
                if([[newData objectAtIndex:j]rangeOfString:@"Vorname"].location != NSNotFound) {
                    lastPlace++;
                    if(lastPlace < currPlace)
                        continue;
                    else
                        break;
                }
            }
        }
    Ist nicht komplett!

    Danke für eure Hilfe!
    Tele

  2. #2
    Avatar von telecaster95
    telecaster95 ist offline
    Themen Starter

    Title
    Benutzer
    seit
    11.04.2011
    Ort
    /home/tele
    Beiträge
    1.617

    Standard Lösung gefunden!

    Hab ne Lösung gefunden
    Wer´s wissen möchte:
    Code:
    for (int j = 0; j < newData.count; j++) {
                if([[newData objectAtIndex:j]rangeOfString:@"Vorname"].location != NSNotFound) {
                    [mitarbeiter addObject:[[Mitarbeiter alloc]init]];
                    [[mitarbeiter lastObject]setVorname:[newData objectAtIndex:j]];
                }
            }
    Einfach in der Schleife selbst initialisieren und danach direkt das letzte Objekt ansprechen. Da alles in einer Schleife passiert, werden auch die Daten nicht (wie im ersten Post)überschrieben.
    LG

    Tele

Diese Seite benutzt Cookies Durch die weitere Nutzung der Seite stimmen Sie der Verwendung von Cookies zu. Infos zum Datenschutz