09.01.2015 Aufrufe

Kapitel 8

Kapitel 8

Kapitel 8

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

8 Software-Engineering und DV-Organisation 377<br />

⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯-⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯<br />

8.2.3 Struktogramme nach Nassi-Shneiderman<br />

Neben den Flussdiagrammen sind auch Struktogramme oder Nassi-Shneiderman-<br />

Diagramme gebräuchlich (siehe DIN 66261). Oft erlauben Struktogramme eine übersichtlichere<br />

Darstellung als Flussdiagramme. Dies ist auf den Wegfall der vielen Pfeile und Linien<br />

zurückzuführen, die in längeren Flussdiagrammen oft verwirrend wirken. Die folgende Abbildung<br />

zeigt die wichtigsten Struktogramm-Symbole.<br />

Anweisung, Block<br />

parallele Blöcke<br />

Block1 Block2 Block3<br />

Alternativanweisung<br />

Bedingung<br />

ja<br />

nein<br />

ja-Block nein-Block<br />

Unterprogramm-Aufruf<br />

Auswahlanweisung<br />

Bedingung<br />

1.<br />

2.<br />

3.<br />

Block1 Block2 Block3 Sonst<br />

Blocksequenz<br />

Block 1<br />

Block 2<br />

Block 3<br />

abweisende<br />

Wiederholungsanweisung<br />

Block<br />

Bedingung<br />

nicht abweisende<br />

Wiederholungsanweisung<br />

Bedingung<br />

Block<br />

Abbildung 8.2.3: Zusammenstellung der wichtigsten in Struktogrammen verwendeten Symbole.<br />

Beispiel: Binäres Suchen als Struktogramm<br />

Der in <strong>Kapitel</strong> 8.2.2 als Flussdiagramm beschriebene Suchalgorithmus zum Auffinden der<br />

Position pos eines Elementes x in einem Array a hat als Struktogramm folgende Form:<br />

PROGRAMM Suchen<br />

Lies x<br />

pos = Bin_Such(x)<br />

pos < 0 <br />

ja<br />

nein<br />

„nicht „gefunden“<br />

gefunden“<br />

gib aus: pos<br />

Abbildung 8.2.4:<br />

Struktogramm des Programms "binäres Suchen".<br />

ja<br />

og=k-1<br />

FUNCTION Bin_Such(x)<br />

Vorbesetzung: ug=1, og=n<br />

Solange og>=ug<br />

ja<br />

k=ug+(og-ug)/2<br />

xa[k] <br />

nein<br />

Rücksprung<br />

Rückgabewert=k<br />

Rücksprung, Rückgabewert = -1

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!