1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

Wann benutze ich welche Schleife?

  • Matt_informatic
  • 3. September 2007 um 10:31
  • Unerledigt
  • Matt_informatic
    5
    Matt_informatic
    Mitglied
    Punkte
    190
    Beiträge
    27
    • 3. September 2007 um 10:31
    • #1

    Hallo,

    bei den Struktogrammen gibt es drei Schleifen: kopfgesteuert/abweisende, Fussgesteuert/nichtabweisende und laufbereichsgesteuert.

    Was sind die Merkmale, wann ich welche Schleife einsetze?

    Habe zwar ein paar Beispiele durchgespielt, aber so wirklich "klickt" es nicht.

    Habt Ihr Infos und Tipps.

    Danke im voraus.

    Gruß
    Matt_informatic

  • Paulchen
    1
    Paulchen
    Gast
    • 3. September 2007 um 11:17
    • #2

    Grundsätzlich ist es egal, welchen Typ von Schleife du verwendest, du kannst einen Typ einer Schleife immer durch einen anderen Typ ersetzen. Hier ein Beispiel einer Schleife in C, welche die Zahlen von 1 bis 10 ausgeben soll:

    Kopfgesteuert:

    Code
    int a=0;
    while(a<10) {
        a++;
        printf("%i\n",a);
    }
    Code
    int a;
    for(a=1;a<11;a++) {
        printf("%i\n",a);
    }

    Fußgesteuert:

    Code
    int a=0;
    do {
        a++;
        printf("%i\n",a);
    } while (a<10);

    Laufbereichsgesteuert:

    Code
    int a=0;
    for(;;) {
        a++;
        if(a==11) break;
        printf("%i\n",a);
    }

    Welchen Typ von Schleifen du am besten für einen bestimmten Fall verwendest, das bekommst du, wenn du programmierst, ganz von alleine in den Griff. Ich halte es daher nicht für sinnvoll, dafür irgendwelche Regeln aufzustellen. Ich kann dir nur sagen: Ich verwende kaum fußgesteuerte Schleifen - einfach aus Gewohnheit.

  • concealer
    7
    concealer
    Mitglied
    Reaktionen
    1
    Punkte
    471
    Beiträge
    92
    • 3. September 2007 um 12:11
    • #3

    naja ich würd sagen:
    wenn die schleife in jedem fall mind. 1mal durchlaufen werden soll, fußgesteuert, ansonsten kopfgesteuert (weil übersichtlicher); "break" und "continue" wenn es sein muss, die fördern die übersichtlichkeit aber auch nicht wirklich.

    Es genügt nicht, keine Meinung zu haben. Man muss auch unfähig sein, sie auszudrücken. Karl Kraus

  • Matt_informatic
    5
    Matt_informatic
    Mitglied
    Punkte
    190
    Beiträge
    27
    • 3. September 2007 um 13:45
    • #4

    Hi,

    aha, hmm, ich dachte da gibt es so eine Art Regel.

    Wann z.B. bzw. in welchen Fällen muss den die Schleife mindestens 1x durchlaufen werden?

    Gruß
    Matt_informatic

  • Paulchen
    1
    Paulchen
    Gast
    • 3. September 2007 um 13:55
    • #5
    Zitat von Matt_informatic

    Wann z.B. bzw. in welchen Fällen muss den die Schleife mindestens 1x durchlaufen werden?

    Das kommt ganz darauf auf dein Programm an. Daraus, was dein Programm tun soll, kannst du herleiten, wie oft die Schleife, die du schreiben willst, ausgeführt werden soll - ist die Anzahl an Iterationen konstant, kann es vorkommen, dass die Schleife gar nicht ausgeführt werden soll etc.

    Willst du beispielsweise über die Zahlen von 1 bis 10 iterieren, wie in meinem Posting oben, weißt du, dass genau zehn Iterationen ausgeführt werden; dann kannst du dich entscheiden, welchen Typ von Schleife du verwenden willst.

    Willst du beispielsweise über Dateien in einem Verzeichnis iterieren, kann es vorkommen, dass das Verzeichnis leer ist, dann wird die Schleife kein einziges Mal ausgeführt. In diesem Fall ist eine fußgesteuerte Schleife nicht sinnvoll, da vor der Überprüfung der Schleifenbedingung erst nach der ersten Iteration der Schleife erfolgt.

  • Maximilian Rupp 27. Dezember 2024 um 12:04

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Rechtliches

Impressum

Datenschutzerklärung