Exkurs - Bausteine von Algorithmen
Anweisungen als Bausteine von Algorithmen
Algorithmen werden (oft) aus Anweisungen aufgebaut.
Wir betrachten noch einmal den Algorithmus zur Kleeblattsuche.
SOLANGE nicht auf einem Kleeblatt: WENN vor einem Baum: links drehen Schritt weitergehen rechts drehen Schritt weitergehen SOLANGE rechts ein Baum: Schritt weitergehen rechts drehen Schritt weitergehen links drehen SONST: Schritt weitergehen Kleeblatt aufheben
Dieser Algorithmus ist aus zahlreichen elementaren Anweisungen (wie z.B. "Schritt weitergehen"), einer Entscheidungsanweisung sowie zwei Wiederholungsanweisungen aufgebaut.
Struktogramme
Besonders deutlich werden die Bausteine, wenn man Algorithmen mit einer Bildsprache - den sogenannten Struktogrammen - beschreibt.
Als Bausteine werden die folgenden Bildsymbole benutzt.
Elementare Anweisung:
Fallunterscheidung:
Wiederholung:
Die folgende Abbildung verdeutlicht noch einmal, wie mit Hilfe der Bildsymbole ein komplexer Ablauf beschrieben wird.
Elementaren Anweisungen sind hier gelb, Entscheidungsanweisungen grün und Wiederholungsanweisungen rot eingefärbt.
Die verschiedenen Anweisungen müssen auf geeignete Weise zusammengesetzt werden, um einen komplizierten Ablauf zu beschreiben. Man benutzt hierzu zwei Bauprinzipien.
Die einfachste Form der Zusammensetzung ist die (Hintereinander-) Reihung von Anweisungen.
In der Abbildung sind 4 elementare Anweisungen, eine Wiederholungsanweisung und 3 weitere elementare Anweisungen hintereinandergereit. Die Ausführung solcher gereihten Anweisungen erfolgt natürlich der Reihe nach.
Bei komplexen Anweisungen werden Anweisungen geschachtelt. Dabei können beliebig komplizierte Schachtelungsstrukturen gebildet werden.
Die Abbildung zeigt eine Schachtelung, bei der eine elementare Anweisung Teil einer Wiederholungsanweisung ist, die selbst Teil einer Entscheidungsanweisung ist, die ihrerseits wiederum Teil einer Wiederholungsanweisung ist.
Beachte, dass die Ausführung ineinandergeschachtelter Anweisungen im Fall von Entscheidungs- und Wiederholungsanweisungen mit Hilfe von Bedingungen geregelt wird.