Lernpfad:Rekursion in Java/Definition: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Arbeitsauftrag
Jneug (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Jneug (Diskussion | Beiträge) KKeine Bearbeitungszusammenfassung |
||
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
Zeile 3: | Zeile 3: | ||
{{Schublade | | {{Schublade | | ||
Eine rekursive Methode besteht aus | Eine rekursive Methode besteht aus | ||
# einer Abbruchbedingung, | # einer '''Abbruchbedingung''', | ||
# einer Reduktion des Problems, | # einer '''Reduktion''' des Problems, | ||
# mindestens einem Aufruf der | # mindestens einem '''rekursiven Aufruf''' der Methode. | ||
| Farbe=#c7d210}} | | Farbe=#c7d210}} | ||
==Erstes Beispiel Rekursion: Fakultät== | == Erstes Beispiel Rekursion: Fakultät == | ||
Mit der folgenden Methode wird die Fakultät berechnet. | Mit der folgenden Methode wird die Fakultät berechnet. | ||
Zeile 25: | Zeile 25: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
{{Aufgabe:Start}} | {{Aufgabe:Start}} | ||
Ordne den Quelltext-Teilen die einzelnen Bestandteile einer rekursiven Methode zu.<br /> | |||
<lückentext> | <lückentext> | ||
public int fakultaet(int n) { | public int fakultaet(int n) { |
Aktuelle Version vom 12. Februar 2022, 11:02 Uhr
Definition
Eine rekursive Methode besteht aus
- einer Abbruchbedingung,
- einer Reduktion des Problems,
- mindestens einem rekursiven Aufruf der Methode.
Erstes Beispiel Rekursion: Fakultät
Mit der folgenden Methode wird die Fakultät berechnet.
Die Fakultät ist ein mathematischer Operator und wird in der Regel durch ein Ausrufezeichen dargestellt: [math]\displaystyle{ 4! = 4\cdot 3\cdot 2\cdot 1 }[/math] (Das Ausrufezeichen steht dabei hinter der Zahl).
In Java wird dieser Operator bzw. diese Funktion nicht zur Verfügung gestellt, deshalb muss sie programmiert werden. Der Quelltext für die Methode sieht wie folgt aus:
public int fakultaet(int n) {
if(n < 2) {
return 1;
} else {
return n*fakultaet(n-1);
}
}
![Icon Heft.png](/hgwiki/images/thumb/3/36/Icon_Heft.png/64px-Icon_Heft.png)
Ordne den Quelltext-Teilen die einzelnen Bestandteile einer rekursiven Methode zu.
public int fakultaet(int n) { if(n < 2) { Abbruchbedingung return 1; Abbruch der Rekursion } else { return n*fakultaet(n-1); rekursiver Aufruf Reduktion des Problems } }