11.10.2013 Aufrufe

Algorithmen und Datenstrukturen Vorlesungsskript WS/SS 99-00

Algorithmen und Datenstrukturen Vorlesungsskript WS/SS 99-00

Algorithmen und Datenstrukturen Vorlesungsskript WS/SS 99-00

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

2. Algorithmische Gr<strong>und</strong>konzepte<br />

2.7.2. Komplexe Anweisungen<br />

1. Folge (Sequenz): Sind «<br />

sung.<br />

Zustandstransformation<br />

<strong>und</strong> « Anweisungen, so ist « « auch eine Anwei-<br />

« « ℄℄ « ℄ « ℄ <br />

2. Auswahl (Selektion): Sind « <strong>und</strong> « Anweisungen <strong>und</strong> ein Boolescher Ausdruck,<br />

so ist<br />

if B then « else « fi<br />

eine Anweisung.<br />

Transformation:<br />

if then « else « fi℄ <br />

« ℄ falls true<br />

« ℄ falls false<br />

Hier wird vorausgesetzt, daß definiert ist. Ansonsten ist die Bedeutung<br />

der Auswahlanweisung <strong>und</strong>efiniert.<br />

3. Wiederholung (Iteration): Ist « Anweisung <strong>und</strong> Boolscher Ausdruck, so ist<br />

while B do « od<br />

eine Anweisung.<br />

Transformation:<br />

while do « od℄ <br />

, falls false<br />

while do « od℄ « ℄ , sonst<br />

Ist <strong>und</strong>efiniert, so ist die Bedeutung dieser Anweisung ebenfalls <strong>und</strong>efiniert.<br />

Bemerkung 2.3 (Umsetzung in Programmiersprachen)<br />

¯ In realen imperativen Programmiersprachen gibt es fast immer diese Anweisungen,<br />

meistens jedoch viel mehr.<br />

¯ while-Schleifen sind rekursiv definiert, sie brauchen nicht zu terminieren.<br />

¯ Die Verwendung von if-fi ist wegen der klaren Klammerung sauberer.<br />

¯ In Algol68 gibt es auch “nichtdeterministische” Versionen der Sequenz<br />

¯ Jedoch sind bereits Programmiersprachen mit diesen Sprachelementen universell<br />

(siehe weiter unten).<br />

Wir beschränken uns im folgenden auf die Datentypen bool <strong>und</strong> int.<br />

44

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!