s n h m r u
i

Übungen

Aufgabe 1

Ein Kapital von 1000 Euro wird jährlich mit 5% verzinst. Die Funktion kapital(n) beschreibe den Kapitalwert nach n Jahren.

Die folgenden Problemreduktionsschritte sollen dem Algorithmus / Programm zu Grunde liegen.

kapital(0) -> 
    1000

kapital(5) ->
    kapital(4) + 0.05 * kapital(4)

Verallgemeinere diese Reduktionsschritte zu einem Programm und teste es mit mehreren Funktionsaufrufen.

Hilfe-Schritt 1: Implementierung ausprobieren

Wenn du deinen Algorithmus implementiert hast, kannst du ihn hier mit verschiedenen Eingaben testen. Der RecursionTutor zeigt dir den vollständigen Aufrufbaum und hilft dir, Fehler in deiner Lösung zu finden.

Hilfe-Schritt 2: Lücken füllen

Nutze den RecursionTutor, um die Rekursion Schritt für Schritt nachzuvollziehen. Die Funktion wird hier mit 1.05 * kapital(n-1) formuliert – das ist äquivalent zu kapital(n-1) + 0.05 * kapital(n-1), aber effizienter. Fülle die Lücken im Diagramm für kapital(2) aus.

Hilfe-Schritt 3: Algorithmus ausprobieren

Hier siehst du den fertigen Algorithmus im RecursionTutor. Erkunde das Diagramm mit verschiedenen Eingaben und beobachte, wie sich der Aufrufbaum verändert. Versuche anschließend, den Algorithmus selbst nachzuschreiben.

Aufgabe 2

Ein Patient nimmt jeden Morgen 5 mg eines Medikaments ein. Im Laufe des Tages werden von dem gesamten, im Körper befindlichen Medikament 40% abgebaut. Die Funktion medikamentenmenge(n) beschreibe die Menge des Medikaments (in mg), die sich am n-ten Tag morgens nach Einnahme des Medikaments im Körper befindet. Dabei soll die erste Einnahme am 0. Tag erfolgen.

Ergänze die folgenden Problemreduktionsschritte und verallgemeinere sie zu einem rekursiven Algorithmus / Programm.

medikamentenmenge(0) -> 
    ...

medikamentenmenge(5) ->
    ...
Hilfe-Schritt 1: Implementierung ausprobieren

Wenn du deinen Algorithmus implementiert hast, kannst du ihn hier mit verschiedenen Eingaben testen. Der RecursionTutor zeigt dir den vollständigen Aufrufbaum und hilft dir, Fehler in deiner Lösung zu finden.

Hilfe-Schritt 2: Lücken füllen

Nutze den RecursionTutor, um die Rekursion Schritt für Schritt nachzuvollziehen. Fülle die Lücken im Diagramm für medikamentenmenge(2) aus.

Hilfe-Schritt 3: Algorithmus ausprobieren

Hier siehst du den fertigen Algorithmus im RecursionTutor. Erkunde das Diagramm mit verschiedenen Eingaben und beobachte, wie sich der Aufrufbaum verändert. Versuche anschließend, den Algorithmus selbst nachzuschreiben.

Aufgabe 3

Betrachte die in der Abbildung gezeigte Quadratpflanze.

selbstähnliche Figur

Im Jahr 0 besteht die Quadratpflanze nur aus dem großen Basisquadrat. Jedes Jahr wachsen dann neue kleinere Quadrate an drei Quadratseiten. Die Grundseite des Basisquadrates sei m Einheiten (z. B. cm) lang. Die Funktion umfang(n, m) beschreibe den Umfang der gesamten Quadratpflanze nach n Jahren bei einer Seitenlänge m. Die Funktion flaecheninhalt(n, m) beschreibe den Flächeninhalt der gesamten Quadratpflanze nach n Jahren bei einer Seitenlänge m. Entwickle rekursive Algorithmen zur Berechnung der beiden Funktionen. Welche Beobachtung kann man für die Entwicklung des Umfangs und der Fläche für große n machen?

Hilfe zu umfang:

Hilfe-Schritt 1: Implementierung ausprobieren

Wenn du deinen Algorithmus für umfang implementiert hast, kannst du ihn hier testen.

Hilfe-Schritt 2: Lücken füllen

Fülle die Lücken im Diagramm für umfang(2, 9) aus. Hinweis: Im RecursionTutor wird m // 3 (ganzzahlige Division) verwendet, damit alle Werte als ganze Zahlen erscheinen.

Hilfe-Schritt 3: Algorithmus ausprobieren

Hier siehst du den fertigen Algorithmus. Erkunde das Diagramm mit verschiedenen Eingaben und versuche anschließend, ihn selbst nachzuschreiben.

Hilfe zu flaecheninhalt:

Hilfe-Schritt 1: Implementierung ausprobieren

Wenn du deinen Algorithmus für flaecheninhalt implementiert hast, kannst du ihn hier testen.

Hilfe-Schritt 2: Lücken füllen

Fülle die Lücken im Diagramm für flaecheninhalt(2, 9) aus. Hinweis: Im RecursionTutor wird m * m statt m**2 und m // 3 statt m / 3 verwendet.

Hilfe-Schritt 3: Algorithmus ausprobieren

Hier siehst du den fertigen Algorithmus. Erkunde das Diagramm mit verschiedenen Eingaben und versuche anschließend, ihn selbst nachzuschreiben.

Suche

v
2.2.4.3 Übungen
Kopieren durch Anklicken

Rückmeldung geben