=> Lektion 1: Grundlagen

Lektion 2 - Struktogramme

- oder Programmieren auf dem Papier

Struktogramme sind halbgraphische Notationen für Algorithmen. Sie haben sich weitgehend durchgesetzt und stehen im Einklang mit dem Gedanken der strukturierten Programmierung.

Elemente

1. Einfache Anweisungen werden in rechteckige Kästen gesetzt.


2. Lineare Abfolgen werden durch lückenloses Untereinandersetzen von Struktogrammen ausgedrückt. Sie stellen eine Sequenz dar. Hier wird zuerst Struktogramm A, dann Struktogramm B durchlaufen. Beide Struktogramme können selbst wieder einfache Anweisungen oder auch beliebig kompliziert sein.


3. Entscheidungen. In einer Bedingung wird geregelt, welches der beiden untergeordneten Struktogramme ausgeführt wird. Das jeweils andere wird nicht durchlaufen. Üblicherweise steht der „Ja“-Fall auf der linken Seite.


4. Wie ihr bereits kennt, können Wiederholungen (Schleifen) kopf- bzw. fußgesteuert sein. Das nachfolgende Bild zeigt eine kopfgesteuerte Schleife: solange die angegebene Bedingung erfüllt ist, wird das eingebettete Unter-Struktogramm ausgeführt.

Das nachfolgende Bild zeigt eine fußgesteuerte Schleife: das eingebettete Unter-Struktogramm wird ausgeführt, bis die angegebene Bedingung erfüllt ist. Die Schleife wird auf jeden Fall mindestens einmal durchlaufen.

Beispiel: Fakultät

Bei der Eingabe einer Zahl n soll die Fakultät dieser Zahl n berechnet werden und anschließend das Ergebnis in der Variablen e ausgegeben werden.

Übungen

Struktogrammeditoren als Freeware wählbar:


1. Der Führerscheintest: in Abhägigkeit von deinem Alter gibt das Programm aus: „Ja, du darfst den Führerschein machen.“ oder „Sorry, du bleibst in der Warteschleife!“ Zeichne für dieses Problem ein Struktogramm.

2. Erkläre folgendes Struktogramm? Was wird ein entsprechender Algorithmus ausgeben?

3. Erstelle ein Struktogramm zum Euklidischen Algorithmus für den ggT.

4. Erstelle auch Struktogramme für deine zwei bis drei weiteren Algorithmen, die du in Lektion 0 programmiert hast.


=> Lektion 3 - Übungen
=> Übersicht: Algorithmen