Die Methode forSchleife(int a) implementiert eine arithmetische Reihe, die für die Eingaben 0 bis 4 die folgenden Ausgaben erzeugt:
Eingabe | Ausgabe |
---|---|
0 | 0 |
1 | 1=1 |
2 | 3=1+2 |
3 | 6=1+2+3 |
4 | 10=1+2+3+4 |
public class ArithmetischeReihe { public static void main(String[] args) {// nur zum Testen int c; for (int a = 0; a <= 5; a++) { c = forSchleife(a); System.out.println(a + ":" + c); c = caseVerzweigung(a); System.out.println(a + ":" + c); } // Ende for } // Ende Methode main public static int forSchleife(int a) {//Vorgabe int ergebnis = 0;
for (int i = 1; i <= a; i++) {
ergebnis += i;
}
return ergebnis; }
Transformieren Sie die Methode forSchleife(int a) in eine gleichwertige Methode caseVerzeigung(int a) die, die gleichen Ergebnisse mit einer case Verzweigung erzeugt. In der case Verzweigung kann jeweils das Endergebnis aus der Tabelle oben zurückgegeben werden. Nutzen Sie den folgenden Quellcode:
public static int caseVerzweigung(int a) {
int ergebnis = 0;
// Hier Lösung implementieren
return ergebnis;
} // Ende switch } } // Ende der Klasse
Niveau | 1 |
Schwierigkeitsgrad | mittel |
Zeit | 5 Minuten |
Die Antwort ist bei der nächsten Frage zu finden (URL rechts unten)
Antwort zu Frage 1.53: Codetransformation (do-while Schleife)
public static int doWhileSchleife(int a) {
int ergebnis = 0; int i = 1; do { ergebnis += i; i++; } while (i <= a); return ergebnis; }
Comments
Ist da ein Fehler in der Lösung?
Guten Tag,
müsste in der Lösung von der Codetransformation das int i = 1 sein und nicht int i = 0 ?
Da die Initialisierung in der Aufgabe in der For Schleide int i = 1 ist?
Mit freundlichen Grüßen!
Sehr gut beobachtet
Das ganze mit 1 loslaufen lassen ist der korrekte Ansatz.
Das Ergebnis eines Starts mit i=0 war korrekt, da eine 0 auf das Ergebnis aufaddiert wurde.
Ich habe die Antwort geändert.
+=
Was bedeutet ergebnis += i; ich konnte den Operator nicht finden.
Addierender Verbundoperator
Das ist ein Verbundoperator. Er addiert und führt eine Zuweisung zur gleichen Variable in einem durch. Er wird hier im Skript beschrieben.
Google verrät das auch wenn man nach Java += Operator sucht...