====== for-Schleife ====== Die dritte Art von Schleifen ist die ''for''-Schleife, auch Zählschleife genannt. Sie wird meist verwendet, wenn die Anzahl der Schleifenbedingungen im Vorraus feststeht, wobei eine sogenannte ''Laufvariable'' eingesetzt wird, um die Anzahl der Schleifendurchläufe zu zählen. ==== Beispiel ==== Realisiere das Programmbeispiel der while-Schleife, welches die Zahlen 1 bis n aufsummiert, mit Hilfe der for-Schleife! **Lösung 1**: for(int i=n; i>0; i--){ sum=sum+i; } **Lösung 2**: for (int i=1;i<=n ;i++) { sum=sum+i; } ===== Syntax der for-Anweisung ===== for([Initialisierung];[Bedingungsausdruck]; [Aktualisierung]) { Anweisung1; Anweisung2; ...; } * Das Schlüsselwort ''for'' leitet die ''for''-Anweisung ein. * In Klammern ''('' '')'' eingeschlossen und durch **Strichpunkt getrennt**, folgen der Initialisierungsteil, der Bedingungsausdruck und der Aktualisierungsteil. * Im **Initialisierungsteil** steht die Anweisung, die vor der zu wiederholenden Anweisung auszuführen ist. Hier wird der Laufvariable ein Wert zugewiesen. * Im **Bedingungsausdruck** steht die Abbruchbedingung, die jedesmal vor Betreten der Schleife geprüft wird. * Im **Akualisierungsteil** wird der Wert der Laufvariable aktualisiert, beispielsweise um 1 erhöht (z.B. i++) oder um ein 1 vermindert (z.B. i - -). ==== Aufgabe 1==== Schreibe eine Programm das die gewünschte Malreihe ausgibt. Ein möglicher Benutzerdialog könnte folgendermaßen aussehen: E: Willkommen! Diese Programm berechnet die von Ihnen gewünschte Malreihe! E: Welche Malreihe wünschen Sie? A: 2 A: 1*2=2 2*2=4 ... 10*2=20 ==== Aufgabe 2 ==== Verändere das Programm aus Aufgabe 1 so, dass alle 1*1-Reihen (1-10) auf einmal ausgegeben werden. //Hinweise: Schleifen können auch ineinander geschachtelt werden! // Ausgabebeispiel: Das folgende Programm gibt alle Einmaleins-Reihen aus: 1er-Reihe: 1*1=1 2*1=2 ... 2er-Reihe: 1*2=2 2*2=4 ... ==== Zusätzliche Beispiele zum Thema Schleifen ==== (Müssen nicht unbedingt mit der for-Schleife realisiert werden) === Aufgabe a) === Schreibe ein Programm, dass die eingegebene Dezimalzahl in eine Dualzahl umwandelt.\\ Auf welches Problem stößt du dabei? === Aufgabe b) === Schreibe ein Programm, dass die ersten n Fibonacci-Zahlen erzeugt und ausgibt! Eine Fibonacci-Zahl berechnet sich aus der Summe der beiden vorhergehenden Zahlen. Die ersten beiden Fibonacci-Zahlen sind gleich 1! z.B.: 1, 1, 2, 3, 5, 8, 13, 21,...