Schleife (Informatik): Unterschied zwischen den Versionen
(7 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 12: | Zeile 12: | ||
=== while-Schleife === | === while-Schleife === | ||
Falls die <code>while</code>-Bedingung erfüllt sind wird die Schleife durchgelaufen und dann die <code>while</code>-Bedingung erneut geprüft. Wenn die <code>while</code>-Bedingung nicht mehr erfüllt ist, bricht die Schleife ab. | Falls die <code>while</code>-Bedingung erfüllt sind wird die Schleife durchgelaufen und dann die <code>while</code>-Bedingung erneut geprüft. Wenn die <code>while</code>-Bedingung nicht mehr erfüllt ist, bricht die Schleife ab. | ||
'''Beispiel 1:''' | '''Beispiel 1:''' | ||
Der folgende Code gibt die Zahlen von 0 bis 99 aus: | Der folgende Code gibt die Zahlen von 0 bis 99 aus: | ||
<code> | <code> | ||
int i=0; | int i=0; | ||
'''while'''(i<100) | '''while'''(i<100) | ||
Zeile 24: | Zeile 23: | ||
i = i+1; | i = i+1; | ||
} | } | ||
</code> | </code> | ||
'''Beispiel 2:''' | '''Beispiel 2:''' | ||
Kara geht im Uhrzeigersinn um einen Wald: | Kara geht im Uhrzeigersinn um einen Wald: | ||
<code> | <code> | ||
'''while'''(!kara.onLeaf()) | '''while'''(!kara.onLeaf()) | ||
{ | { | ||
Zeile 45: | Zeile 44: | ||
kara.move(); | kara.move(); | ||
} | } | ||
</code> | </code> | ||
'''Wichtig''': | '''Wichtig''': | ||
Zeile 59: | Zeile 58: | ||
=== do-while-Schleife === | === do-while-Schleife === | ||
TODO: Beschreibung | TODO: Beschreibung | ||
'''Syntax:''' | '''Syntax:''' | ||
Der folgende Code gibt die Zahlen von 0 bis 99 aus: | Der folgende Code gibt die Zahlen von 0 bis 99 aus: | ||
<code> | <code> | ||
int i=0; | int i=0; | ||
do | do | ||
Zeile 73: | Zeile 69: | ||
} | } | ||
while (i<100); | while (i<100); | ||
</code> | </code> | ||
=== for-Schleife === | === for-Schleife === | ||
<code>for</code>-Schleifen sind '''Zählschleifen'''. Sie werden verwendet, wenn etwas '''n-mal (z.B. 100-mal)''' wiederholt werden soll. | |||
'''Beispiel 1:''' | |||
''' | |||
Der folgende Code gibt die Zahlen von 0 bis 99 aus: | Der folgende Code gibt die Zahlen von 0 bis 99 aus: | ||
<code> | <code> | ||
for(int i=0; i<100; i++) | for(int i=0; i<100; i++) | ||
{ | { | ||
System.out.println(i); | System.out.println(i); | ||
} | } | ||
</code> | </code> | ||
'''Erläuterung:''' | |||
Die <code>for-</code> Schleife hat in der Klammer immer drei Teile, die durch Semikolons ('''<code>;</code>''') getrennt werden. | |||
# im '''ersten''' Teil wird eine '''Zählvariable deklariert''' und mit einem Startwert initalisiert.<br>Im Beispiel wird <code>i</code> deklariert und auf 0 gesetzt. | |||
# im '''zweiten''' Teil wird eine '''Bedingung''' festgelegt: Solange die Bedingung erfüllt ist, läuft die Schleife.<br>Im Beispiel läuft die Schleife so lange, wie <code>i</code> kleiner als 100 ist. | |||
# im '''dritten''' Teil wird die '''Veränderung''' festgelegt: <u>Nach</u> jedem Schleifendurchlauf wird die Veränderung durchgeführt.<br>Im Beispiel wird <code>i</code> um 1 erhöht. | |||
=== foreach-Schleife === | === foreach-Schleife === | ||
Zeile 98: | Zeile 99: | ||
'''Syntax:''' | '''Syntax:''' | ||
Der folgende Code gibt | Der folgende Code gibt alle Namen aus <code>namenVector</code> aus: | ||
<code> | <code> | ||
Vector<String> namenVector; | |||
// | // TODO: namenVector füllen! | ||
for ( | for (String akutellerName : namenVector ) { | ||
System.out.println( | System.out.println(aktuellerName); | ||
} | } | ||
</code> | </code> |
Aktuelle Version vom 23. Januar 2022, 17:58 Uhr
TODO: Beschreibung
Arten
man unterscheidet zwischen folgende Schleifen-arten:
- while-Schleife
- do-While-Schleife
- for-Schleife
- foreach-Schleife
while-Schleife
Falls die while
-Bedingung erfüllt sind wird die Schleife durchgelaufen und dann die while
-Bedingung erneut geprüft. Wenn die while
-Bedingung nicht mehr erfüllt ist, bricht die Schleife ab.
Beispiel 1: Der folgende Code gibt die Zahlen von 0 bis 99 aus:
int i=0;
while(i<100)
{
System.out.println(i);
i = i+1;
}
Beispiel 2: Kara geht im Uhrzeigersinn um einen Wald:
while(!kara.onLeaf())
{
if(!kara.treeRight())
{
kara.turnRight();
}
if(kara.treeFront())
{
kara.turnLeft();
if(kara.treeFront())
{
kara.turnLeft();
}
}
kara.move();
}
Wichtig:
In der Schleife muss etwas verändert werden, damit die while
-Bedingung irgendwann einmal erfüllt ist!
Best practice:
Die Veränderung sollte immer als Letztes in der Schleife gemacht werden!
In Beispiel 1 ist die Veränderung i = i + 1
In Beispiel 2 ist die Veränderung, dass Kara einen Schritt weitergeht.
do-while-Schleife
TODO: Beschreibung
Syntax: Der folgende Code gibt die Zahlen von 0 bis 99 aus:
int i=0;
do
{
System.out.println(i);
i++;
}
while (i<100);
for-Schleife
for
-Schleifen sind Zählschleifen. Sie werden verwendet, wenn etwas n-mal (z.B. 100-mal) wiederholt werden soll.
Beispiel 1: Der folgende Code gibt die Zahlen von 0 bis 99 aus:
for(int i=0; i<100; i++)
{
System.out.println(i);
}
Erläuterung:
Die for-
Schleife hat in der Klammer immer drei Teile, die durch Semikolons (;
) getrennt werden.
- im ersten Teil wird eine Zählvariable deklariert und mit einem Startwert initalisiert.
Im Beispiel wirdi
deklariert und auf 0 gesetzt. - im zweiten Teil wird eine Bedingung festgelegt: Solange die Bedingung erfüllt ist, läuft die Schleife.
Im Beispiel läuft die Schleife so lange, wiei
kleiner als 100 ist. - im dritten Teil wird die Veränderung festgelegt: Nach jedem Schleifendurchlauf wird die Veränderung durchgeführt.
Im Beispiel wirdi
um 1 erhöht.
foreach-Schleife
TODO: Beschreibung
Nicht zentralabitur-relevant
Syntax:
Der folgende Code gibt alle Namen aus namenVector
aus:
Vector<String> namenVector;
// TODO: namenVector füllen!
for (String akutellerName : namenVector ) {
System.out.println(aktuellerName);
}