Studium, Ausbildung und Beruf

web uni-protokolle.de
 powered by
NachrichtenLexikonProtokolleBücherForenDonnerstag, 17. April 2014 

Kontrollstruktur


Dieser Artikel von Wikipedia ist u.U. veraltet. Die neue Version gibt es hier.
Kontrollstrukturen werden in imperativen Programmiersprachen verwendet um den Ablauf eines Computerprogramms steuern. Die wichtigsten Kontrollstrukturen sind Verzweigungen und Schleifen . Meist wird ihre Ausführung über logische der boolschen Algebra beeinflusst. Kontrollstrukturen können auch über spezielle Diagramme visualisiert werden (z.B. Nassi-Shneiderman-Diagramme ).

In den 1960er Jahren waren Flussdiagramme und Sprunganweisungen in üblich was bei größeren Programmen nahezu zu Unwartbarkeit führte da sie schnell unleserlich wurden. der 1970er Jahre erfolgte ein Ansatz zur Selbstbeschränkung wenige Elemente nicht zuletzt durch Niklaus Wirth mit seiner Programmiersprache Pascal .

Ohne Kontrollstrukturen müssen Wiederholungen und Bedingungen Sprünge (GOTO IF ... GOTO - engl. : Springe zu Wenn ... Springe) realisiert Die Ausgabe der Zahlen von 1 bis jedoch ohne den Bereich 40 bis 60 ohne Kontrollstruktur etwa so realisiert (in Anlehnung die Programmiersprache BASIC)

 I:=1 M1: PRINT I -- Ausgabe I IF I=39 GOTO M2 -- Wenn springe (bedingte Ausführung) I:=I+1 IF I<=100 GOTO -- Wenn ... springe (wiederholte Ausführung) END Programmende M2: I:=61 GOTO M1 -- Sprung M1  
Unstrukturiertes Programm: Ausgabe der Zahlen 1 2 39 61 62 63 ... 99 100

Bei Verwendung von Kontrollstrukturen spricht man von strukturierter Programmierung . Jede Kontrollstruktur besteht mindestens aus einem und meistens einem Endeschlüsselwort. Sprachen wie Pascal C Modula -2 (und auch neuere Varianten der Sprache besitzen Kontrollstrukuren für Wiederholungen

  REPEAT   Anweisungen   UNTIL Bedingung   

und bedingte Ausführung von Anweisungen:

  IF Bedingung THEN   Anweisungen   ELSE   Anweisungen   ENDIF   

Die Schlüsselwörter "klammern" dabei die Anweisungen mehrfach oder bedingt ausgeführt werden. Die obenstehende kann dann folgendermaßen realisiert werden:

 I:=1 REPEAT -- Wiederhole PRINT I I=39 THEN -- Wenn .. Dann I:=61 -- Sonst I:=I+1 ENDIF -- EndeWenn UNTIL -- bis END -- Programmende  
Strukturiertes Programm: Ausgabe der Zahlen 1 2 39 61 62 63 ... 99 100

Das Programm erhält eine Struktur. Meist diese durch Einrückungen noch verdeutlicht. Die neuen und die Formatierung erleichtern das Verständnis des

Verzicht auf GOTO

Kontrollstrukturen ermöglichen den Verzicht auf Sprünge GOTO da jede Programmieraufgabe mit Hilfe von und Wiederholungsstrukturen gelöst werden kann. Programmierung ohne unter Verwendung einer modernen Sprache gilt heute guter Stil.

Dabei wird auf einige der Freiheiten Im obenstehenden Beispiel wird bei I=39 in der strukturierten Variante trotzdem noch I>100 abgefragt obwohl dies eigentlich nicht notwendig Ein optimierender Compiler könnte dies zwar korrigieren aber wohl nicht in allen Fällen in Lage solche Feinheiten zu erkennen.

Die Verwendung von Kontrollstrukturen verhindert das von sogenanntem Spaghetticode bei dem wild hin- und hergesprungen Die folgenden Merkmale kennzeichnen ein Programm bei von Kontrollstrukturen:

  • Der Programmfluss ist immer von oben nach
  • Anweisungen die wiederholt werden sind durch Schlüsselworte gekennzeichnet
  • Bedingungen und Wiederholungen sind sofort erkennbar
  • Kein GOTO und keine Marken

Flussdiagramme und Struktogramme

Flussdiagramme dienen zur grafischen Wiedergabe des Programmflusses. besitzen dieselben Freiheiten die GOTO im Programmcode 1972 hatten I. Nassi und B. Shneiderman Idee Flussdiagramme durch Struktogramme zu ersetzen bei Kontrollstrukturen durch grafische Elemente dargestellt werden den Nassi-Shneiderman-Diagrammen . Struktogramme lassen sich dann in strukturierten umsetzen.

Der unstrukturierte Code zur Ausgabe der 1 bis 39 und 61 bis 100 sich durch ein Flussdiagramm wiedergeben:

Flussdiagramm des unstrukturierten Programms
Ausgabe der Zahlen 1 2 ... 61 62 ... 100

Auch der strukturierte Code liesse sich ein ähnlisches Diagramm darstellen zusätzlich jedoch durch Struktogramm

Struktogramm des strukturierten Programms
Ausgabe der Zahlen 1 2 ... 39 62 ... 100



Bücher zum Thema Kontrollstruktur

Dieser Artikel von Wikipedia unterliegt der GNU FDL.

ImpressumLesezeichen setzenSeite versendenSeite drucken

HTML-Code zum Verweis auf diese Seite:
<a href="http://www.uni-protokolle.de/Lexikon/Kontrollstruktur.html">Kontrollstruktur </a>