Java/Schleife: Unterschied zwischen den Versionen

Aus ZUM-Unterrichten
main>Karl Kirst
(eval)
main>Karl Kirst
(eval)
Zeile 26: Zeile 26:
Eleganter ist da schon die Verwendung der [[java/while-Schleife|while-Schleife]]
Eleganter ist da schon die Verwendung der [[java/while-Schleife|while-Schleife]]


<source lang="java">
<eval id="4d59b3483bfc0">
int faktor = 1;
int faktor = 1;
while ( faktor <= 9 ) {
while ( faktor <= 9 ) {
Zeile 32: Zeile 32:
     faktor++;
     faktor++;
}
}
</source>
</eval>


== Lösung mit for-Schleife ==
== Lösung mit for-Schleife ==
Zeile 42: Zeile 42:
Das folgende Beispiel macht genau das selbe wie die while-Schleife im obigen Beispiel:
Das folgende Beispiel macht genau das selbe wie die while-Schleife im obigen Beispiel:


<source lang="java">
<eval id="4d59b3483cf59">
for ( int faktor = 1; faktor <= 9; faktor ++ ) {
for ( int faktor = 1; faktor <= 9; faktor ++ ) {
       System.out.println("3 x " + faktor + " = " + 3*faktor );
       System.out.println("3 x " + faktor + " = " + 3*faktor );
}
}
</source>
</eval>


== Weitere Beispiele ==
== Weitere Beispiele ==


<source lang="java">
<eval id="4d59b3483def8">
//allgemeiner Aufbau
//allgemeiner Aufbau
for ( Zählvariable mit Anfangswert; Anfangswert; Bedingung; Schrittweite) {
for ( Zählvariable mit Anfangswert; Anfangswert; Bedingung; Schrittweite) {
       // Anweisung, die wiederholt werden soll
       // Anweisung, die wiederholt werden soll
}
}
</eval>


// hochzählen in 1er-Schritten
<eval id="4d59b3483ee97">// hochzählen in 1er-Schritten
for ( int zählvariable = Anfangswert; zählvariable <= Endwert; zählvariable++ ) {
for ( int zählvariable = Anfangswert; zählvariable <= Endwert; zählvariable++ ) {
       // Anweisung, die wiederholt werden soll
       // Anweisung, die wiederholt werden soll
}
}
</eval>


// hochzählen in 5er-Schritten
<eval id="4d59b3483fe37">// hochzählen in 5er-Schritten
for ( int zählvariable = Anfangswert; zählvariable <= Endwert; zählvariable+=5 ) {
for ( int zählvariable = Anfangswert; zählvariable <= Endwert; zählvariable+=5 ) {
       // Anweisung, die wiederholt werden soll
       // Anweisung, die wiederholt werden soll
}
}
</eval>


// Countdown
<eval id="4d59b34840dd7">// Countdown
for ( int zählvariable = Anfangswert; zählvariable > Endwert; zählvariable-- ) {
for ( int zählvariable = Anfangswert; zählvariable > Endwert; zählvariable-- ) {
       // Anweisung, die wiederholt werden soll
       // Anweisung, die wiederholt werden soll
}
}
</source>
</eval>


== Aufgaben ==
== Aufgaben ==

Version vom 14. Februar 2011, 22:57 Uhr

<language>Java</language> Vorlage:Kurzinfo-2

Aufgabenstellung

Häufig benötigt man beim Programmieren eine mehrfache Ausführung eines Teilbereichs.

Denkbar ist es, dass ein Programmierer dazu einfach Zeilen wiederholt.

So lässt sich z.B. das kleine 1 x 1 von 3 wie folgt ausgeben:

<eval id="4d59a5b697e64"> System.out.println("3 x 1 = 3"); System.out.println("3 x 2 = 6"); System.out.println("3 x 3 = 9"); System.out.println("3 x 4 = 12"); System.out.println("3 x 5 = 15"); System.out.println("3 x 6 = 18"); System.out.println("3 x 7 = 21"); System.out.println("3 x 8 = 24"); System.out.println("3 x 9 = 27"); </eval>

Lösung mit while-Schleife

Eleganter ist da schon die Verwendung der while-Schleife

<eval id="4d59b3483bfc0"> int faktor = 1; while ( faktor <= 9 ) {

   System.out.println("3 x " + faktor + " = " + 3*faktor );
   faktor++;

} </eval>

Lösung mit for-Schleife

Für genau diesen Fall gibt es aber auch eine Schleife: die for-Schleife. Sie ist immer dann sinnvoll einsetzbar,

  • wenn eine bestimmte Anzahl von Wiederholungen durchgeführt werden soll.
  • wenn eine Variable von einem bestimmten Wert bis zu einem anderen gezählt werden soll.

Das folgende Beispiel macht genau das selbe wie die while-Schleife im obigen Beispiel:

<eval id="4d59b3483cf59"> for ( int faktor = 1; faktor <= 9; faktor ++ ) {

     System.out.println("3 x " + faktor + " = " + 3*faktor );

} </eval>

Weitere Beispiele

<eval id="4d59b3483def8"> //allgemeiner Aufbau for ( Zählvariable mit Anfangswert; Anfangswert; Bedingung; Schrittweite) {

     // Anweisung, die wiederholt werden soll

} </eval>

<eval id="4d59b3483ee97">// hochzählen in 1er-Schritten for ( int zählvariable = Anfangswert; zählvariable <= Endwert; zählvariable++ ) {

     // Anweisung, die wiederholt werden soll

} </eval>

<eval id="4d59b3483fe37">// hochzählen in 5er-Schritten for ( int zählvariable = Anfangswert; zählvariable <= Endwert; zählvariable+=5 ) {

     // Anweisung, die wiederholt werden soll

} </eval>

<eval id="4d59b34840dd7">// Countdown for ( int zählvariable = Anfangswert; zählvariable > Endwert; zählvariable-- ) {

     // Anweisung, die wiederholt werden soll

} </eval>

Aufgaben

Übung
  • Nennen Sie Anwendungsgebiete der for-Schleife
  • Lassen Sie die Zahlen von 1 bis 100 auf dem Bildschirm ausgeben
  • Diesmal nur die geraden Zahlen
  • Diesmal von 100 bis -100
  • Die ungeraden von 200 bis -1000
  • Lassen Sie 50 mal den Buchstaben "A" auf den Bildschirm schreiben
  • Die Zahlen von -10 bis 10 ohne die 0


Linkliste