<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Kontrollstruktur</id>
	<title>Kontrollstruktur - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Kontrollstruktur"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Kontrollstruktur&amp;action=history"/>
	<updated>2026-06-08T02:40:03Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Kontrollstruktur&amp;diff=30565&amp;oldid=prev</id>
		<title>imported&gt;Aka: Tippfehler entfernt, Links optimiert, Kleinkram</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Kontrollstruktur&amp;diff=30565&amp;oldid=prev"/>
		<updated>2025-06-22T16:26:32Z</updated>

		<summary type="html">&lt;p&gt;&lt;a href=&quot;/index.php?title=Benutzer:Aka/Tippfehler_entfernt&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Benutzer:Aka/Tippfehler entfernt (Seite nicht vorhanden)&quot;&gt;Tippfehler entfernt&lt;/a&gt;, Links optimiert, Kleinkram&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Kontrollstrukturen&amp;#039;&amp;#039;&amp;#039; sind in der Informatik die Vorgabe, in welcher Reihenfolge die Handlungsschritte eines [[Algorithmus]] abgearbeitet werden. In [[Imperative Programmiersprache|imperativen Programmiersprachen]] werden sie durch [[Kontrollanweisung|&amp;#039;&amp;#039;&amp;#039;Kontrollanweisungen&amp;#039;&amp;#039;&amp;#039;]] (&amp;#039;&amp;#039;&amp;#039;Steuerkonstrukte&amp;#039;&amp;#039;&amp;#039;) implementiert. Mit Kontrollstrukturen können Programme auf verschiedene Zustände reagieren, indem Programmteile nur bedingt ([[Bedingte Anweisung und Verzweigung|bedingte Anweisung]]) oder wiederholt ([[Schleife (Programmierung)|Schleife]]) ausgeführt werden.&amp;lt;ref&amp;gt;{{Literatur |Autor=Reisig, Wolfgang, 1950-, Freytag, Johann Christoph, 1954- |Hrsg= |Titel=Informatik : aktuelle Themen im historischen Kontext |Verlag=Springer |Ort=Berlin |Datum=2006 |ISBN=978-3-540-32743-1 |Seiten=278}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
[[Datei:Struktogramm.png|mini|Struktogramm]]&lt;br /&gt;
&lt;br /&gt;
== Geschichtliche Entwicklung ==&lt;br /&gt;
Kontrollstrukturen helfen, Sprünge mit [[Sprunganweisung|Goto]] zu vermeiden, da fast jede Programmieraufgabe mit Hilfe von Bedingungs- und Wiederholungsstrukturen gelöst werden kann. Programmierung ohne Goto unter Verwendung einer modernen Sprache ist heute der Normalfall. Die Programmiersprache [[Java (Programmiersprache)|Java]] unterstützt z.&amp;amp;nbsp;B. keine [[Sprunganweisung|Goto]]-Anweisung mehr.&lt;br /&gt;
&lt;br /&gt;
[[Heinz Rutishauser]] entwickelte von 1949 bis 1951 die einfache algebraische Programmiersprache „[[Superplan]]“. Rutishauser kannte [[Konrad Zuse]]s Arbeit über Programmiersprachen, d.&amp;amp;nbsp;h. Zuses [[Plankalkül]] und wählte den Namen in Anlehnung an Zuses Bezeichnung „Rechenplan“ für ein einzelnes Programm. Rutishausers einfache Sprache hatte nur eine Kontrollstruktur: die &amp;#039;&amp;#039;&amp;#039;Für&amp;#039;&amp;#039;&amp;#039;-Schleife.&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;Für&amp;#039;&amp;#039;&amp;#039; i=2(&amp;#039;&amp;#039;1&amp;#039;&amp;#039;)n: &amp;lt;math&amp;gt;a_i &amp;lt;/math&amp;gt; + 3 = &amp;lt;math&amp;gt;a_i &amp;lt;/math&amp;gt;&lt;br /&gt;
In den frühen 1960er Jahren waren Flussdiagramme und [[Sprunganweisung]]en in Programmen üblich, was größere Programme nahezu [[Wartbarkeit|unwartbar]] machte, da sie schnell unüberschaubar wurden. 1968 sprach sich [[Edsger W. Dijkstra]] in seinem Aufsatz &amp;#039;&amp;#039;Go To Statement Considered Harmful&amp;#039;&amp;#039; (der Titel geht allerdings auf [[Niklaus Wirth]] zurück), für eine Abschaffung des GOTO-Befehls in allen höheren Programmiersprachen aus.&amp;lt;ref&amp;gt;{{Literatur |Autor=Edsger W. Dijkstra |Titel=Letters to the editor: Go To Statement Considered Harmful |Sammelwerk=Communications of the ACM |Band=11 |Nummer=3 |Datum=1968-03 |Seiten=147–148 |DOI=10.1145/362929.362947}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Im Mai 1966 publizierten Böhm und Jacopini in der Zeitschrift &amp;#039;&amp;#039;Communications of the ACM&amp;#039;&amp;#039; einen Artikel, in dem sie zeigten, dass jedes Programm, das Goto-[[Anweisung (Programmierung)|Anweisungen]] enthält, in ein Goto-freies Programm umgeschrieben werden kann, das nur mit Verzweigung (IF THEN ELSE) und einer Schleife (WHILE &amp;#039;&amp;#039;Bedingung&amp;#039;&amp;#039; DO &amp;#039;&amp;#039;Anweisung&amp;#039;&amp;#039;) arbeitet, gegebenenfalls unter Zuhilfenahme von etwas Code-Doppelung und der Einführung von booleschen Variablen (true/false).&lt;br /&gt;
&lt;br /&gt;
Anfang der 1970er Jahre wurde damit begonnen, diesen Ansatz zur Selbstbeschränkung auf wenige, typische Elemente umzusetzen. Wegweisend war die Arbeit von [[Niklaus Wirth]] mit seiner Programmiersprache [[Pascal (Programmiersprache)|Pascal]].&lt;br /&gt;
&lt;br /&gt;
== Kontrollstrukturen ==&lt;br /&gt;
Konventionelle Programmiermodelle und -sprachen konstruieren Algorithmen mit Hilfe folgender Kontrollstrukturen:&amp;lt;ref&amp;gt;{{Literatur |Autor=Reisig, Wolfgang, 1950-, Freytag, Johann Christoph, 1954- |Hrsg= |Titel=Informatik : aktuelle Themen im historischen Kontext |Verlag=Springer |Ort=Berlin |Datum=2006 |ISBN=978-3-540-32743-1 |Seiten=301}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Sequenz: die Anweisungen werden linear ausgeführt.&lt;br /&gt;
* [[Bedingte Anweisung und Verzweigung]]: die Anweisungen werden nur bei einem bestimmten Zustand ausgeführt.&lt;br /&gt;
* [[Schleife (Programmierung)|Schleife]] oder Iteration: die Anweisungen werden nur solange ausgeführt wie oder bis ein bestimmter Zustand erreicht wird.&lt;br /&gt;
* [[Rekursion]]: Bei der [[Rekursive Programmierung|rekursiven Programmierung]] ruft sich eine [[Prozedur (Programmierung)|Prozedur]], [[Funktion (Programmierung)|Funktion]] oder [[Methode (Programmierung)|Methode]] in einem [[Computerprogramm]] selbst wieder auf.&lt;br /&gt;
* [[Blockstruktur]]: Mehrere Anweisungen werden „gruppiert“ und beschränken ggf. den Gültigkeitsbereich bestimmter Variablen oder Aktionen.&lt;br /&gt;
Das [[Programmierparadigma]] der [[Strukturierte Programmierung|Strukturierten Programmierung]] beinhaltet neben dem Paradigma der [[Prozedurale Programmierung|prozeduralen Programmierung]] die Beschränkung auf lediglich drei Kontrollstrukturen Sequenz, Verzweigung und Schleifen.&lt;br /&gt;
&lt;br /&gt;
Die strukturierte Programmierung verhindert das Entstehen von [[Quelltext]], bei dem auf unübersichtliche Weise hin- und hergesprungen wird, dem sogenannten [[Spaghetticode|Spaghetti-Code]]. Die folgenden Regeln dienen der Nutzung von Kontrollstrukturen:&lt;br /&gt;
* Anweisungen, die wiederholt werden, sind durch Schlüsselwörter klar gekennzeichnet.&lt;br /&gt;
* Bedingungen und Wiederholungen sind sofort erkennbar.&lt;br /&gt;
* Sprunganweisungen und [[Sprungmarke]]n werden vermieden.&lt;br /&gt;
&lt;br /&gt;
== Kontrollanweisungen ==&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Kontrollanweisungen&amp;#039;&amp;#039;&amp;#039; (auch &amp;#039;&amp;#039;&amp;#039;Kontrollflussanweisungen&amp;#039;&amp;#039;&amp;#039;, &amp;#039;&amp;#039;&amp;#039;Steuerkonstrukte&amp;#039;&amp;#039;&amp;#039;) sind Anweisungen, die eine Kontrollstruktur implementieren.&amp;lt;ref&amp;gt;{{Literatur |Autor=Steyer, Ralph, |Hrsg= |Titel=Programmierung in Python : Ein kompakter Einstieg für die Praxis |Ort=Wiesbaden |Datum= |ISBN=978-3-658-20705-2 |Seiten=87}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Blockstrukturanweisung (Sequenz) ===&lt;br /&gt;
Blockstrukturanweisungen kennzeichnen Beginn und Ende einer [[Blockstruktur]] (Sequenz) und strukturieren damit Programmteile. In [[Pascal (Programmiersprache)|Pascal]] oder [[Visual Basic .NET|Visual Basic]] werden sie mit &amp;lt;code&amp;gt;begin ... end&amp;lt;/code&amp;gt; gekennzeichnet, in einigen Programmiersprachen werden sie durch Klammernpaare  gekennzeichnet. Im Quelltext werden die Anweisungen einer Sequenz einheitlich eingerückt, um die Blockstruktur besser sichtbar zu machen. In [[Python (Programmiersprache)|Python]] wird auf Blockstrukturanweisungen verzichtet; die Zugehörigkeit von Anweisungen zu Blöcken wird hier allein durch [[Einzug (Typografie)|Einrückung]] gekennzeichnet.&lt;br /&gt;
&lt;br /&gt;
=== Bedingte Anweisung ===&lt;br /&gt;
{{Hauptartikel|Bedingte Anweisung und Verzweigung}}&lt;br /&gt;
Eine Bedingte Anweisung ist eine Anweisung, die nur bei der Erfüllung einer bestimmten Bedingung ausgeführt wird. Durch sie kann ein [[Computerprogramm|Programm]] auf unterschiedliche Zustände und Benutzereingaben reagieren. Eine Bedingte Anweisung besteht aus einer Bedingungsprüfung und der eigentlichen Anweisung &amp;lt;code&amp;gt;IF &amp;lt;Bedingung&amp;gt; THEN &amp;lt;Anweisung&amp;gt;&amp;lt;/code&amp;gt;. Nur dann, wenn eine Bedingung erfüllt ist, wird die Anweisung ausgeführt. Koppelt man eine Bedingungsprüfung und einen Sprungbefehl  &amp;lt;code&amp;gt;if bedingung then methode()&amp;lt;/code&amp;gt;, so erhält man eine Verzweigung, bei der eine Methode nur bei positiver Auswertung des Bedingungsausdrucks (&amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt;) ausgeführt wird. Durch die Prüfung des Zustands einer Zählervariable können auch Schleifen implementiert werden.&lt;br /&gt;
&lt;br /&gt;
=== Verzweigung (Alternative) ===&lt;br /&gt;
Für eine alternative Verzweigung bieten viele Programmiersprachen das IF-THEN-ELSE Konstrukt in der Form &amp;lt;code&amp;gt;IF &amp;lt;Bedingung&amp;gt; THEN &amp;lt;Anweisung1&amp;gt; ELSE &amp;lt;Anweisung2&amp;gt;&amp;lt;/code&amp;gt;. Bei positiver Bedingung wird Anweisung1 ausgeführt. In allen anderen Fällen (ELSE) wird Anweisung2 ausgeführt. So kann ein Programm beispielsweise abhängig von einer Eingabe zwei unterschiedliche Methoden aufrufen. Viele Sprachen erlauben weitere Prüfungen und damit verbundene alternative Verzweigungen in der Form &amp;lt;code&amp;gt;IF [[ELIF],..] ELSE&amp;lt;/code&amp;gt; oder ein Konstrukt aus &amp;lt;code&amp;gt;Case&amp;lt;/code&amp;gt;- und &amp;lt;code&amp;gt;Switch&amp;lt;/code&amp;gt;-Anweisungen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Beispiel in Python&amp;lt;/u&amp;gt; (Die Funktion vorzeichen ermittelt das Vorzeichen des Ausdrucks i):&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def vorzeichen(i):&lt;br /&gt;
    if i&amp;gt;0:                   #Bedingung&lt;br /&gt;
        return &amp;quot;positiv +&amp;quot;    #bedingte Anweisung1&lt;br /&gt;
    elif i&amp;lt;0:                 #weitere Bedingung&lt;br /&gt;
        return &amp;quot;negativ -&amp;quot;    #bedingte Anweisung2&lt;br /&gt;
    else                      #anderenfalls&lt;br /&gt;
        return &amp;quot;neutral 0&amp;quot;    #bedingte Anweisung3&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Schleife (Wiederholung, Iterationsanweisung) ===&lt;br /&gt;
{{Hauptartikel|Schleife (Programmierung)}}&lt;br /&gt;
Schleifen dienen dazu, [[Blockstruktur|Anweisungs-Blöcke]] wiederholt auszuführen. Es gibt viele Erscheinungsformen von Schleifen:&lt;br /&gt;
&lt;br /&gt;
* [[For-Schleife|Zählschleifen (&amp;lt;code&amp;gt;for&amp;lt;/code&amp;gt;-Schleife]])&lt;br /&gt;
* [[While-Schleife|Bedingungsgesteuerte Schleifen (&amp;lt;code&amp;gt;while&amp;lt;/code&amp;gt;-Schleife]])&lt;br /&gt;
* [[Foreach|Mengengesteuerte Schleifen (&amp;lt;code&amp;gt;for..in&amp;lt;/code&amp;gt; bzw. &amp;lt;code&amp;gt;foreach&amp;lt;/code&amp;gt;-Schleife)]]&lt;br /&gt;
* [[Endlosschleife (Programmierung)|Endlosschleife]]n&lt;br /&gt;
&amp;lt;u&amp;gt;Beispiel in Python&amp;lt;/u&amp;gt; (Für die Zahlen −5, 2, 0 und 1000 wird nacheinander das jeweilige Vorzeichen ausgegeben):&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
for i in (-5,2,0,1000):&lt;br /&gt;
    print (vorzeichen(i))&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
In den Schleifen gibt es je nach Programmiersprache Anweisungen&lt;br /&gt;
* zum vorzeitigen Verlassen von Schleifen (&amp;lt;code&amp;gt;break&amp;lt;/code&amp;gt;)&lt;br /&gt;
* zur Fortsetzung mit der nächsten Iteration (&amp;lt;code&amp;gt;continue&amp;lt;/code&amp;gt;)&lt;br /&gt;
* zur Wiederholung der aktuellen Iteration (&amp;lt;code&amp;gt;retry&amp;lt;/code&amp;gt;) oder&lt;br /&gt;
* zum erneuten Starten der Schleife (&amp;lt;code&amp;gt;redo&amp;lt;/code&amp;gt; [[Ruby (Programmiersprache)]])&lt;br /&gt;
&lt;br /&gt;
[[List Comprehension|List-Comprehensions]] erzeugen [[Menge (Datenstruktur)|Mengen]] mit Schleifen- und Bedingungskonstrukten:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
m = [x**2 for x in range(12) if x%2 == 0] #ergibt die Quadratzahlen aus geraden x&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Sprunganweisung ===&lt;br /&gt;
{{Hauptartikel|Sprunganweisung}}&lt;br /&gt;
Die Anweisungen in einer Sequenz werden sequentiell, also nacheinander, abgearbeitet. Bei einem Sprung wird eine durch Adresse oder durch Label festgelegte Sprungmarke angesprungen und der Programmverlauf dort fortgesetzt.&lt;br /&gt;
&lt;br /&gt;
Bedingte Sprunganweisungen (im Maschinencode) sind meist die Grundlage für bedingte Ausführung sowie Schleifen (in der Hochsprache);&lt;br /&gt;
unbedingte Sprunganweisungen (im Maschinencode) sind meist die Grundlage für Funktionsaufrufe oder Endlosschleifen.&lt;br /&gt;
&lt;br /&gt;
Beim Aufruf eines Unterprogramms wird zunächst abgespeichert, wohin nach dem Ende des Unterprogramms zurückzukehren ist. Anschließend müssen ggf. Aufrufparameter an eine vereinbarte Stelle gelegt werden; erst danach kann das Unterprogramm angesprungen werden.&lt;br /&gt;
&lt;br /&gt;
Die Verwendung von Sprunganweisungen in Hochsprachen ist [[Sprunganweisung#Umstrittene Verwendung von GOTO|umstritten]], da sie schnell zu Spaghetticode führen kann. Sprunganweisungen lassen sich (in Hochsprachen) durch andere Kontrollstrukturen ersetzen.&lt;br /&gt;
&lt;br /&gt;
=== Rücksprung ===&lt;br /&gt;
{{Hauptartikel|Rücksprung}}&lt;br /&gt;
Wird bei einem Sprungbefehl ein Unterprogramm oder eine andere Methode aufgerufen, so kann diese mittels &amp;lt;code&amp;gt;return&amp;lt;/code&amp;gt; wieder verlassen und das Programm direkt nach dem Absprungpunkt fortgesetzt werden. Dabei können sogenannte [[Rückgabewert]]e übergeben werden.&lt;br /&gt;
&lt;br /&gt;
=== Ereignis- und Ausnahmebehandlung ===&lt;br /&gt;
{{Hauptartikel|Ausnahmebehandlung}}&lt;br /&gt;
Mit der Ausnahmebehandlung kann ein Programm die Kontrolle bei bestimmten Programmzuständen – meistens Fehlerzuständen – an andere Programmebenen zur Weiterbehandlung weiterzureichen. Ausnahmen oder Exceptions haben in weiten Teilen die Behandlung von Fehlern mittels Fehlercodes oder Sprunganweisungen abgelöst.&lt;br /&gt;
&lt;br /&gt;
== Grafische Darstellung ==&lt;br /&gt;
[[Datei:UML-Diagramme.svg|mini|UML-Diagramme]]&lt;br /&gt;
Kontrollstrukturen können mittels [[Diagramm]]en visualisiert und modelliert werden.&lt;br /&gt;
[[Datei:Flowchart de.svg|mini|Flussdiagramm]]&lt;br /&gt;
Aktuell gebräuchlich sind hierfür die [[UML]]-[[Sequenzdiagramm|&amp;#039;&amp;#039;Sequenzdiagramme&amp;#039;&amp;#039;]] als Weiterentwicklung der [[Struktogramm|&amp;#039;&amp;#039;Struktogramme&amp;#039;&amp;#039;]] ([[Nassi-Shneiderman-Diagramm|&amp;#039;&amp;#039;Nassi-Shneiderman-Diagramme&amp;#039;&amp;#039;]]) und UML-[[Aktivitätsdiagramm|&amp;#039;&amp;#039;Aktivitätsdiagramme&amp;#039;&amp;#039;]] als Weiterentwicklung der [[Flussdiagramm]]e (&amp;#039;&amp;#039;Flow Charts&amp;#039;&amp;#039;, nach [[ISO 5807]]) bzw. der spezifischeren [[Programmablaufplan|&amp;#039;&amp;#039;Programmablaufpläne&amp;#039;&amp;#039;]] (sogenannter &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;PAP&amp;#039;&amp;#039;&amp;#039;s&amp;#039;&amp;#039;, nach DIN 66001).&lt;br /&gt;
&lt;br /&gt;
In Struktogrammen wird die Kontrollstruktur durch entsprechende Symbole für Verzweigung und Schleife deutlicher.&lt;br /&gt;
&lt;br /&gt;
Hierdurch wird nicht nur das Verständnis für Programmabläufe geschult sowie deren Fehlersuche erleichtert, sondern ebenso die Kommunikation darüber mit Personen außerhalb des Bereichs der Softwareentwicklung bzw. ohne Programmiersprachen-Kenntnisse ermöglicht, ohne dass diese eingearbeitet werden müssen. Die grafische Darstellung der Abläufe ist hierbei intuitiver und fehlerfreierer verständlich, als dies beispielsweise eine ebenfalls programmiersprachenunabhängige aber textuelle Beschreibung in sogenanntem [[Pseudocode|&amp;#039;&amp;#039;Pseudo-Code&amp;#039;&amp;#039;]] leisten kann.&lt;br /&gt;
&lt;br /&gt;
Struktogramme lassen sich dann in einen [[Strukturierte Programmierung|strukturierten Programmcode]] umsetzen.&lt;br /&gt;
&lt;br /&gt;
== Weitere Kategorisierungen ==&lt;br /&gt;
Die Arten von Kontrollflussanweisungen, die von verschiedenen Sprachen unterstützt werden, variieren, können nach ihrer Wirkung kategorisiert werden:&lt;br /&gt;
&lt;br /&gt;
* Kennzeichnung des Beginns und Endes einer [[Blockstruktur]] (Blockstrukturanweisung)&lt;br /&gt;
* Fortsetzung bei einer anderen Anweisung ([[Sprunganweisung]]en)&lt;br /&gt;
* Beenden des Programms oder Prozedur, Methode oder Funktion, Verhindern einer weiteren Ausführung ([[Rücksprung]] bedingungsloser Stopp)&lt;br /&gt;
* Ausführen einer (Reihe von) Anweisungen nur, wenn eine Bedingung erfüllt ist ([[Bedingte Anweisung und Verzweigung|bedingte Anweisung oder Verzweigung]])&lt;br /&gt;
* Ausführen einer Reihe von Anweisungen in einer [[Schleife (Programmierung)|Schleife]] nicht oder mehrmals, bis oder solange wie eine Bedingung erfüllt ist (Iterationsanweisung)&lt;br /&gt;
* Ausführen einer Reihe entfernter Anweisungen, nach Eintritt eines [[Ereignis (Programmierung)|Ereignisses]] (Ereignis- und [[Ausnahmebehandlung]])&lt;br /&gt;
&lt;br /&gt;
Manche Kontrollanweisungen, wie zum Beispiel der unbedingte Sprung, lassen sich nicht eindeutig einer Kontrollstruktur zuordnen oder können für mehrere Kontrollstrukturen notwendig sein.&lt;br /&gt;
&lt;br /&gt;
Viele [[Programmiersprache]]n wie zum Beispiel imperative Sprachen enthalten Kontrollanweisungen.&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Programmiersprachelement]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Aka</name></author>
	</entry>
</feed>