Kopfgesteuerte Schleife: Unterschied zwischen den Versionen
K |
(→Negativbeispiel) |
||
(5 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
Eine '''kopfgesteuerte [[Schleife]]''' ist eine [[Kontrollstruktur]]. Sie bietet die Möglichkeit, Codezeilen zu wiederholen. | Eine '''kopfgesteuerte [[Schleife]]''' ist eine [[Kontrollstruktur]]. Sie bietet die Möglichkeit, Codezeilen zu wiederholen. | ||
− | Eine kopfgesteuerte Schleife überprüft anhand einer Eintrittsbedingung am Kopf der Schleife, ob ihr Inhalt ausgeführt werden soll oder nicht. Die Ausführung einer solchen Schleife kann daher auch gänzlich übersprungen werden, sollte diese Bedingung nie erfüllt werden. Die Schleife springt nach Ausführung des Schleifenrumpfes immer zurück zum Kopf, um die dort deklarierte Bedingung erneut zu überprüfen. | + | Eine kopfgesteuerte Schleife überprüft anhand einer '''Eintrittsbedingung''' am Kopf der Schleife, ob ihr Inhalt ausgeführt werden soll oder nicht. Die Ausführung einer solchen Schleife kann daher auch gänzlich übersprungen werden, sollte diese Bedingung nie erfüllt werden. Die Schleife springt nach Ausführung des Schleifenrumpfes immer zurück zum Kopf, um die dort deklarierte Bedingung erneut zu überprüfen. |
− | In [[Java]] wird eine kopfgesteuerte Schleife mit dem Schlüsselwort | + | In [[Java]] wird eine kopfgesteuerte Schleife mit dem [[Schlüsselwort]] '''while''' deklariert, weswegen sie oft auch als '''while-Schleife''' bezeichnet wird. |
= Syntaxdiagramm = | = Syntaxdiagramm = | ||
Zeile 13: | Zeile 13: | ||
== Der Schleifenkopf == | == Der Schleifenkopf == | ||
− | + | ===Aufbau=== | |
− | Wichtig: Auf diese Bedingung darf '''kein Semikolon''' folgen. | + | Die Schleife beginnt mit dem Schlüsselwort '''while'''. Darauf folgt in runden Klammern die '''Bedingung''', bei der die Schleife ausgeführt werden soll. Die Schleife wird ausgeführt, solange die Eintrittsbedingung gilt. |
+ | |||
+ | '''Wichtig:''' Auf diese Bedingung darf '''kein Semikolon''' folgen. | ||
===Beispiel=== | ===Beispiel=== | ||
Zeile 27: | Zeile 29: | ||
== Der Schleifenrumpf == | == Der Schleifenrumpf == | ||
− | + | ===Aufbau=== | |
− | Wichtig: Ziel dieser Schleifenart ist es, dass irgendwann die Eintrittsbedingung nicht mehr erreicht wird. Der auszuführende Code sollte dementsprechend formuliert werden. Terminiert die Schleife nicht, ist das Programm in einer '''[[Endlosschleife]]''' gefangen. | + | Als '''Schleifenrumpf''' wird der in der Schleife auszuführende Code bezeichnet. Dieser steht in geschweiften Klammern. |
+ | |||
+ | '''Wichtig:''' Ziel dieser Schleifenart ist es, dass irgendwann die Eintrittsbedingung nicht mehr erreicht wird. Der auszuführende Code sollte dementsprechend formuliert werden. Terminiert die Schleife nicht, ist das Programm in einer '''[[Endlosschleife]]''' gefangen. | ||
===Beispiel=== | ===Beispiel=== | ||
Zeile 41: | Zeile 45: | ||
== Die komplette while-Schleife == | == Die komplette while-Schleife == | ||
− | Die komplette Schleife besteht aus dem Kopf und dem Rumpf | + | ===Aufbau=== |
+ | |||
+ | Die komplette Schleife besteht aus dem Kopf und dem Rumpf: | ||
+ | |||
+ | '''while'''(''Bedingung'') | ||
+ | |||
+ | {''Befehl''} | ||
===Beispiel=== | ===Beispiel=== | ||
Zeile 53: | Zeile 63: | ||
'''Solange''' noch Guthaben vorhanden ist, wird 50 von diesem abgezogen. | '''Solange''' noch Guthaben vorhanden ist, wird 50 von diesem abgezogen. | ||
+ | |||
+ | ===Negativbeispiel=== | ||
+ | |||
+ | <source lang="java"> | ||
+ | int start=2; | ||
+ | while( start > 0) | ||
+ | { | ||
+ | Guthaben = Guthaben - 50; | ||
+ | } | ||
+ | </source> | ||
+ | |||
+ | Auf die [[Laufvariable]] <code>start</code> im Kopf der Schleife wird in ihrem weiteren Ablauf nicht mehr zugegriffen. Diese Variable verändert somit ihren Wert nicht und die Eintrittsbedingung der [[while]]-Schleife bleibt permanent erfüllt. Somit handelt es sich hierbei um eine '''Endlosschleife'''. | ||
=Schlüsselwort= | =Schlüsselwort= | ||
*while | *while |
Aktuelle Version vom 14. August 2016, 22:50 Uhr
Eine kopfgesteuerte Schleife ist eine Kontrollstruktur. Sie bietet die Möglichkeit, Codezeilen zu wiederholen.
Eine kopfgesteuerte Schleife überprüft anhand einer Eintrittsbedingung am Kopf der Schleife, ob ihr Inhalt ausgeführt werden soll oder nicht. Die Ausführung einer solchen Schleife kann daher auch gänzlich übersprungen werden, sollte diese Bedingung nie erfüllt werden. Die Schleife springt nach Ausführung des Schleifenrumpfes immer zurück zum Kopf, um die dort deklarierte Bedingung erneut zu überprüfen.
In Java wird eine kopfgesteuerte Schleife mit dem Schlüsselwort while deklariert, weswegen sie oft auch als while-Schleife bezeichnet wird.
Inhaltsverzeichnis
Syntaxdiagramm
Aufbau einer while-Schleife
Der Schleifenkopf
Aufbau
Die Schleife beginnt mit dem Schlüsselwort while. Darauf folgt in runden Klammern die Bedingung, bei der die Schleife ausgeführt werden soll. Die Schleife wird ausgeführt, solange die Eintrittsbedingung gilt.
Wichtig: Auf diese Bedingung darf kein Semikolon folgen.
Beispiel
while( Guthaben > 0)
Diese Schleife wird solange ausgeführt, wie Guthaben vorhanden ist.
Der Schleifenrumpf
Aufbau
Als Schleifenrumpf wird der in der Schleife auszuführende Code bezeichnet. Dieser steht in geschweiften Klammern.
Wichtig: Ziel dieser Schleifenart ist es, dass irgendwann die Eintrittsbedingung nicht mehr erreicht wird. Der auszuführende Code sollte dementsprechend formuliert werden. Terminiert die Schleife nicht, ist das Programm in einer Endlosschleife gefangen.
Beispiel
{ Guthaben = Guthaben - 50; }
Die komplette while-Schleife
Aufbau
Die komplette Schleife besteht aus dem Kopf und dem Rumpf:
while(Bedingung)
{Befehl}
Beispiel
while( Guthaben > 0) { Guthaben = Guthaben - 50; }
Solange noch Guthaben vorhanden ist, wird 50 von diesem abgezogen.
Negativbeispiel
int start=2; while( start > 0) { Guthaben = Guthaben - 50; }
Auf die Laufvariable start
im Kopf der Schleife wird in ihrem weiteren Ablauf nicht mehr zugegriffen. Diese Variable verändert somit ihren Wert nicht und die Eintrittsbedingung der while-Schleife bleibt permanent erfüllt. Somit handelt es sich hierbei um eine Endlosschleife.
Schlüsselwort
- while