From 1df916399ed26417d9660e2ed7cb7417f18fc736 Mon Sep 17 00:00:00 2001 From: Thomas Smits Date: Mon, 11 Mar 2024 10:34:40 +0100 Subject: [PATCH] Update of exercises --- Assignment_001/readme.md | 2 +- Assignment_001/solution/readme.md | 2 +- Assignment_002/readme.md | 2 +- Assignment_002/solution/readme.md | 2 +- Assignment_003/readme.md | 2 +- Assignment_003/solution/readme.md | 4 ++-- Assignment_004/readme.md | 2 +- Assignment_004/solution/readme.md | 4 ++-- Assignment_005/readme.md | 2 +- Assignment_005/solution/readme.md | 2 +- Assignment_006/readme.md | 2 +- Assignment_006/solution/readme.md | 4 ++-- Assignment_007/readme.md | 6 ++--- Assignment_007/solution/readme.md | 4 ++-- Assignment_008/readme.md | 6 ++--- Assignment_008/solution/readme.md | 4 ++-- Assignment_009/readme.md | 4 ++-- Assignment_009/solution/readme.md | 4 ++-- Assignment_010/readme.md | 2 +- Assignment_010/solution/readme.md | 4 ++-- Assignment_011/readme.md | 2 +- Assignment_011/solution/readme.md | 4 ++-- Assignment_012/readme.md | 4 ++-- Assignment_012/solution/readme.md | 4 ++-- Assignment_013/readme.md | 4 ++-- Assignment_013/solution/readme.md | 4 ++-- Assignment_014/readme.md | 4 ++-- Assignment_014/solution/readme.md | 4 ++-- Assignment_015/readme.md | 6 ++--- Assignment_015/solution/readme.md | 4 ++-- Assignment_016/readme.md | 6 ++--- Assignment_016/solution/readme.md | 4 ++-- Assignment_017/readme.md | 4 ++-- Assignment_017/solution/readme.md | 4 ++-- readme.md | 40 +++++++++++++++---------------- 35 files changed, 81 insertions(+), 81 deletions(-) diff --git a/Assignment_001/readme.md b/Assignment_001/readme.md index 909164d..997010a 100644 --- a/Assignment_001/readme.md +++ b/Assignment_001/readme.md @@ -1,3 +1,3 @@ -## Prefix-Notation +# Prefix-Notation Bitte wandeln Sie den folgenden mathematischen Ausdruck in einen gültigen Clojure-Ausdruck in _Prefix-Notation_ um: `42 / (3 + 3 * 3) * 4 - 11`. 📆 **Fällig: ----** 📆 [Musterlösung](solution/) diff --git a/Assignment_001/solution/readme.md b/Assignment_001/solution/readme.md index 2c4da60..f5ee4cd 100644 --- a/Assignment_001/solution/readme.md +++ b/Assignment_001/solution/readme.md @@ -1,4 +1,4 @@ -# Lösung: 01_basics/01_prefix.md +# Lösung: Prefix-Notation















```clojure diff --git a/Assignment_002/readme.md b/Assignment_002/readme.md index 8bbc07a..96466d1 100644 --- a/Assignment_002/readme.md +++ b/Assignment_002/readme.md @@ -1,4 +1,4 @@ -## Erste Schritte +# Erste Schritte 📆 **Fällig: ----** 📆 [Musterlösung](solution/) diff --git a/Assignment_002/solution/readme.md b/Assignment_002/solution/readme.md index f081029..25def57 100644 --- a/Assignment_002/solution/readme.md +++ b/Assignment_002/solution/readme.md @@ -1,3 +1,3 @@ -# Lösung: 01_basics/02_first_steps.md +# Lösung: Erste Schritte !INCLUDESRC "../src/clojure/scalper.clj" clojure diff --git a/Assignment_003/readme.md b/Assignment_003/readme.md index 4adcb99..389bb75 100644 --- a/Assignment_003/readme.md +++ b/Assignment_003/readme.md @@ -1,4 +1,4 @@ -## Maps: Lagerverwaltung +# Maps: Lagerverwaltung 📆 **Fällig: ----** 📆 [Musterlösung](solution/) diff --git a/Assignment_003/solution/readme.md b/Assignment_003/solution/readme.md index cb23d04..8908a61 100644 --- a/Assignment_003/solution/readme.md +++ b/Assignment_003/solution/readme.md @@ -1,3 +1,3 @@ -# Lösung: 01_basics/03_maps.md +# Lösung: Maps: Lagerverwaltung -!INCLUDESRC "../src/clojure/abzock-lager.clj" clojure \ No newline at end of file +!INCLUDESRC "../src/clojure/abzock-lager.clj" clojure diff --git a/Assignment_004/readme.md b/Assignment_004/readme.md index 4040232..4b4ddc4 100644 --- a/Assignment_004/readme.md +++ b/Assignment_004/readme.md @@ -1,4 +1,4 @@ -## Kontrolltrukturen: Lagerverwaltung, Teil 2 +# Kontrolltrukturen: Lagerverwaltung, Teil 2 📆 **Fällig: ----** 📆 [Musterlösung](solution/) diff --git a/Assignment_004/solution/readme.md b/Assignment_004/solution/readme.md index 4167297..3086fb4 100644 --- a/Assignment_004/solution/readme.md +++ b/Assignment_004/solution/readme.md @@ -1,3 +1,3 @@ -# Lösung: 01_basics/04_control_structures.md +# Lösung: Kontrolltrukturen: Lagerverwaltung, Teil 2 -!INCLUDESRC "../src/clojure/abzock-lager-2.clj" clojure \ No newline at end of file +!INCLUDESRC "../src/clojure/abzock-lager-2.clj" clojure diff --git a/Assignment_005/readme.md b/Assignment_005/readme.md index 852157c..285f68d 100644 --- a/Assignment_005/readme.md +++ b/Assignment_005/readme.md @@ -1,4 +1,4 @@ -## Map und Reduce: Gewinnermittlung für die Abzock GmbH +# Map und Reduce: Gewinnermittlung für die Abzock GmbH 📆 **Fällig: ----** 📆 [Musterlösung](solution/) diff --git a/Assignment_005/solution/readme.md b/Assignment_005/solution/readme.md index 89de5ed..87fd722 100644 --- a/Assignment_005/solution/readme.md +++ b/Assignment_005/solution/readme.md @@ -1,3 +1,3 @@ -# Lösung: 01_basics/05_map_reduce.md +# Lösung: Map und Reduce: Gewinnermittlung für die Abzock GmbH !INCLUDESRC "../src/clojure/abzock-gewinn.clj" clojure diff --git a/Assignment_006/readme.md b/Assignment_006/readme.md index aaaea60..74336cd 100644 --- a/Assignment_006/readme.md +++ b/Assignment_006/readme.md @@ -1,4 +1,4 @@ -## Multi-Arity-Funktion +# Multi-Arity-Funktion Schreiben Sie eine Funktion `my-average`, welche das arithmetische Mittel von 2, 4 oder 6 Zahlen bestimmen kann. Verwenden Sie __keine__ Varag-Funktion, sondern programmieren Sie eine _Multi-Arity-Funktion_. 📆 **Fällig: ----** 📆 [Musterlösung](solution/) diff --git a/Assignment_006/solution/readme.md b/Assignment_006/solution/readme.md index 94d0d08..fe55702 100644 --- a/Assignment_006/solution/readme.md +++ b/Assignment_006/solution/readme.md @@ -1,3 +1,3 @@ -# Lösung: 02_funktionen/01_my-average.md +# Lösung: Multi-Arity-Funktion -!INCLUDESRC "../src/clojure/my-average.clj" clojure \ No newline at end of file +!INCLUDESRC "../src/clojure/my-average.clj" clojure diff --git a/Assignment_007/readme.md b/Assignment_007/readme.md index 6a42574..190c06c 100644 --- a/Assignment_007/readme.md +++ b/Assignment_007/readme.md @@ -1,5 +1,5 @@ -## Funktion als Rückgabewert -Schreiben Sie eine Funktion `plus-n-fn`, welche einen Parameter `n` nimmt und eine neue Funktion zurückliefert, die ebenfalls einen Parameter akzeptiert. Diese neue Funktion addiert den Übergabewert zu `n`. +# Funktion als Rückgabewert +Schreiben Sie eine Funktion `plus-n-fn`, welche einen Parameter `n` nimmt und eine neue Funktion zurückliefert, die ebenfalls einen Parameter akzeptiert. Diese neue Funktion addiert den Übergabewert zu `n`. 📆 **Fällig: ----** 📆 [Musterlösung](solution/) @@ -10,6 +10,6 @@ Schreiben Sie eine Funktion `plus-n-fn`, welche einen Parameter `n` nimmt und ei `n` addiert." [n] ; ---- hier Ihr Code ---- - + ) ``` \ No newline at end of file diff --git a/Assignment_007/solution/readme.md b/Assignment_007/solution/readme.md index 0a3c9eb..19fcea8 100644 --- a/Assignment_007/solution/readme.md +++ b/Assignment_007/solution/readme.md @@ -1,3 +1,3 @@ -# Lösung: 02_funktionen/02_plus-n-fn.md +# Lösung: Funktion als Rückgabewert -!INCLUDESRC "../src/clojure/plus-n-fn.clj" clojure \ No newline at end of file +!INCLUDESRC "../src/clojure/plus-n-fn.clj" clojure diff --git a/Assignment_008/readme.md b/Assignment_008/readme.md index 398c7b4..ccb0f49 100644 --- a/Assignment_008/readme.md +++ b/Assignment_008/readme.md @@ -1,11 +1,11 @@ -## apply und Funktionen als Übergabewerte -Schreiben Sie eine Funktion `triple-apply`, der man eine Funktion und beliebig viele weitere Argumente übergeben kann. Die Funktion wird dreimal mit den Argumenten ausgeführt und die Ergebnisse werden addiert, bevor sie zurückgegeben werden. +# apply und Funktionen als Übergabewerte +Schreiben Sie eine Funktion `triple-apply`, der man eine Funktion und beliebig viele weitere Argumente übergeben kann. Die Funktion wird dreimal mit den Argumenten ausgeführt und die Ergebnisse werden addiert, bevor sie zurückgegeben werden. 📆 **Fällig: ----** 📆 [Musterlösung](solution/) ```clojure (defn triple-apply - "Wendet die Funktion `f` dreimal hintereinander auf die Argumente + "Wendet die Funktion `f` dreimal hintereinander auf die Argumente `args` an und gibt die Summe der Ergebnisse zurück." [f & args] ; ---- hier Ihr Code ---- diff --git a/Assignment_008/solution/readme.md b/Assignment_008/solution/readme.md index c2eb5c7..e858302 100644 --- a/Assignment_008/solution/readme.md +++ b/Assignment_008/solution/readme.md @@ -1,3 +1,3 @@ -# Lösung: 02_funktionen/03_triple-apply.md +# Lösung: apply und Funktionen als Übergabewerte -!INCLUDESRC "../src/clojure/triple-apply.clj" clojure \ No newline at end of file +!INCLUDESRC "../src/clojure/triple-apply.clj" clojure diff --git a/Assignment_009/readme.md b/Assignment_009/readme.md index 860b1c0..7d7213f 100644 --- a/Assignment_009/readme.md +++ b/Assignment_009/readme.md @@ -1,5 +1,5 @@ -## Vor- und Nachbedingung -Gegeben Sie die folgende Funktion `sqrt`. Versehen Sie die Funktion mit einer Vor- und Nachbedingung, um den Aufruf mit ungültigen Werten (`n <= 0`) und auf einen positiven Rückgabewert (`> 0`) zu testen. +# Vor- und Nachbedingung +Gegeben Sie die folgende Funktion `sqrt`. Versehen Sie die Funktion mit einer Vor- und Nachbedingung, um den Aufruf mit ungültigen Werten (`n <= 0`) und auf einen positiven Rückgabewert (`> 0`) zu testen. 📆 **Fällig: ----** 📆 [Musterlösung](solution/) diff --git a/Assignment_009/solution/readme.md b/Assignment_009/solution/readme.md index a5013aa..5a43f16 100644 --- a/Assignment_009/solution/readme.md +++ b/Assignment_009/solution/readme.md @@ -1,3 +1,3 @@ -# Lösung: 02_funktionen/04_sqrt.md +# Lösung: Vor- und Nachbedingung -!INCLUDESRC "../src/clojure/sqrt.clj" clojure \ No newline at end of file +!INCLUDESRC "../src/clojure/sqrt.clj" clojure diff --git a/Assignment_010/readme.md b/Assignment_010/readme.md index cf2ab01..174d054 100644 --- a/Assignment_010/readme.md +++ b/Assignment_010/readme.md @@ -1,4 +1,4 @@ -## Tail-Recursion +# Tail-Recursion Schreiben Sie eine Funktion `prod-recur`, die eine beliebige Zahl von Werten multipliziert, die ihr als Vektor oder Sequenz übergeben werden. Verwenden Sie für die Implementierung `loop` und `recur` und __nicht__ `reduce` oder eine andere Funktion außer `*`. 📆 **Fällig: ----** 📆 [Musterlösung](solution/) diff --git a/Assignment_010/solution/readme.md b/Assignment_010/solution/readme.md index 71b934b..4d7ea2e 100644 --- a/Assignment_010/solution/readme.md +++ b/Assignment_010/solution/readme.md @@ -1,3 +1,3 @@ -# Lösung: 03_rekursion/01_prod-recur.md +# Lösung: Tail-Recursion -!INCLUDESRC "../src/clojure/prod-recur.clj" clojure \ No newline at end of file +!INCLUDESRC "../src/clojure/prod-recur.clj" clojure diff --git a/Assignment_011/readme.md b/Assignment_011/readme.md index 8a295fa..c2af566 100644 --- a/Assignment_011/readme.md +++ b/Assignment_011/readme.md @@ -1,4 +1,4 @@ -## Was hoppelt den da? +# Was hoppelt den da? 📆 **Fällig: ----** 📆 [Musterlösung](solution/) diff --git a/Assignment_011/solution/readme.md b/Assignment_011/solution/readme.md index f434a62..49433f3 100644 --- a/Assignment_011/solution/readme.md +++ b/Assignment_011/solution/readme.md @@ -1,3 +1,3 @@ -# Lösung: 03_rekursion/02_karnickel.md +# Lösung: Was hoppelt den da? -!INCLUDESRC "../src/clojure/kaninchen.clj" clojure \ No newline at end of file +!INCLUDESRC "../src/clojure/kaninchen.clj" clojure diff --git a/Assignment_012/readme.md b/Assignment_012/readme.md index ca909d2..6cab9f8 100644 --- a/Assignment_012/readme.md +++ b/Assignment_012/readme.md @@ -1,5 +1,5 @@ -## cond -Schreiben Sie eine Funktion `test-positive`, der man eine Zahl übergibt und die dann einen String zurückgibt, der anzeigt, ob die zweite Zahl größer, kleiner oder gleich 0 ist. +# cond +Schreiben Sie eine Funktion `test-positive`, der man eine Zahl übergibt und die dann einen String zurückgibt, der anzeigt, ob die zweite Zahl größer, kleiner oder gleich 0 ist. 📆 **Fällig: ----** 📆 [Musterlösung](solution/) diff --git a/Assignment_012/solution/readme.md b/Assignment_012/solution/readme.md index c9860b2..d7efde0 100644 --- a/Assignment_012/solution/readme.md +++ b/Assignment_012/solution/readme.md @@ -1,3 +1,3 @@ -# Lösung: 04_variablen/01_test-positive.md +# Lösung: cond -!INCLUDESRC "../src/clojure/test-positive.clj" clojure \ No newline at end of file +!INCLUDESRC "../src/clojure/test-positive.clj" clojure diff --git a/Assignment_013/readme.md b/Assignment_013/readme.md index 983cbdc..cb23b1a 100644 --- a/Assignment_013/readme.md +++ b/Assignment_013/readme.md @@ -1,5 +1,5 @@ -## Ausnahmebehandlung -Schreiben Sie eine Funktion `number-formatter`, die unter Verwendung von der Java-Methode `Integer.parseInt` einen String in einen Zahlenwert umwandelt. Wenn die Umwandlung nicht funktioniert, gibt die Funktion -1 zurück. +# Ausnahmebehandlung +Schreiben Sie eine Funktion `number-formatter`, die unter Verwendung von der Java-Methode `Integer.parseInt` einen String in einen Zahlenwert umwandelt. Wenn die Umwandlung nicht funktioniert, gibt die Funktion -1 zurück. 📆 **Fällig: ----** 📆 [Musterlösung](solution/) diff --git a/Assignment_013/solution/readme.md b/Assignment_013/solution/readme.md index 5643c66..26fa9fe 100644 --- a/Assignment_013/solution/readme.md +++ b/Assignment_013/solution/readme.md @@ -1,3 +1,3 @@ -# Lösung: 04_variablen/02_number-formatter.md +# Lösung: Ausnahmebehandlung -!INCLUDESRC "../src/clojure/number-formatter.clj" clojure \ No newline at end of file +!INCLUDESRC "../src/clojure/number-formatter.clj" clojure diff --git a/Assignment_014/readme.md b/Assignment_014/readme.md index 17ccdc7..178a36a 100644 --- a/Assignment_014/readme.md +++ b/Assignment_014/readme.md @@ -1,5 +1,5 @@ -## reduce -Schreiben Sie eine Funktion `prod-reduce`, die eine beliebige Zahl von Werten multipliziert, die ihr als Vektor oder Sequenz übergeben werden. Verwenden Sie für die Implementierung die `reduce`-Funktion und __keine__ Rekursion. +# reduce +Schreiben Sie eine Funktion `prod-reduce`, die eine beliebige Zahl von Werten multipliziert, die ihr als Vektor oder Sequenz übergeben werden. Verwenden Sie für die Implementierung die `reduce`-Funktion und __keine__ Rekursion. 📆 **Fällig: ----** 📆 [Musterlösung](solution/) diff --git a/Assignment_014/solution/readme.md b/Assignment_014/solution/readme.md index 331f19b..ee4080e 100644 --- a/Assignment_014/solution/readme.md +++ b/Assignment_014/solution/readme.md @@ -1,3 +1,3 @@ -# Lösung: 05_collections/01_prod-reduce.md +# Lösung: reduce -!INCLUDESRC "../src/clojure/prod-reduce.clj" clojure \ No newline at end of file +!INCLUDESRC "../src/clojure/prod-reduce.clj" clojure diff --git a/Assignment_015/readme.md b/Assignment_015/readme.md index d13f93a..b85fb9f 100644 --- a/Assignment_015/readme.md +++ b/Assignment_015/readme.md @@ -1,12 +1,12 @@ -## mapping und cycle -Schreiben Sie eine Funktion `map-cycle`, welche durch eine übergebene Menge von Zahlen wiederholt läuft. Die Übergabe erfolgt als _Vararg-Argument_. Die Zahlen werden dann mal Zwei genommen und es wird jeweils 1 abgezogen (z.B. 5 -> 10 - 1 = 9). Aus dem Ergebnis werden dann n-Werte, gesteuert über den ersten Parameter, zurückgegeben. +# mapping und cycle +Schreiben Sie eine Funktion `map-cycle`, welche durch eine übergebene Menge von Zahlen wiederholt läuft. Die Übergabe erfolgt als _Vararg-Argument_. Die Zahlen werden dann mal Zwei genommen und es wird jeweils 1 abgezogen (z.B. 5 -> 10 - 1 = 9). Aus dem Ergebnis werden dann n-Werte, gesteuert über den ersten Parameter, zurückgegeben. 📆 **Fällig: ----** 📆 [Musterlösung](solution/) ```clojure (defn map-cycle "Erzeugt eine unendliche Sequenz der Zahlen `zahlen` - und berechnet für jede Zahl deren Doppeltes und zieht + und berechnet für jede Zahl deren Doppeltes und zieht 1 ab. Vom Ergebnis werden `n` Elemente zurück gegeben." [n & zahlen] diff --git a/Assignment_015/solution/readme.md b/Assignment_015/solution/readme.md index 811629b..6617626 100644 --- a/Assignment_015/solution/readme.md +++ b/Assignment_015/solution/readme.md @@ -1,3 +1,3 @@ -# Lösung: 05_collections/02_map-cycle.md +# Lösung: mapping und cycle -!INCLUDESRC "../src/clojure/map-cycle.clj" clojure \ No newline at end of file +!INCLUDESRC "../src/clojure/map-cycle.clj" clojure diff --git a/Assignment_016/readme.md b/Assignment_016/readme.md index 6dd1e49..cbc05bc 100644 --- a/Assignment_016/readme.md +++ b/Assignment_016/readme.md @@ -1,5 +1,5 @@ -## take-while -Schreiben Sie eine Funktion `below-zero`, welche einen Vektor oder eine Sequenz übergeben bekommt. Die Funktion soll einen neuen Vektor (oder Sequenz) mit denselben Elementen zurückgeben, diese endet aber vor dem ersten Element das `>= 0` ist. +# take-while +Schreiben Sie eine Funktion `below-zero`, welche einen Vektor oder eine Sequenz übergeben bekommt. Die Funktion soll einen neuen Vektor (oder Sequenz) mit denselben Elementen zurückgeben, diese endet aber vor dem ersten Element das `>= 0` ist. 📆 **Fällig: ----** 📆 [Musterlösung](solution/) @@ -8,6 +8,6 @@ Schreiben Sie eine Funktion `below-zero`, welche einen Vektor oder eine Sequenz "Läuft über `data` und gibt die Elemente bis zum ersten Auftreten eines Wertes >= 0 zurück." [data] -; ---- hier Ihr Code ---- +; ---- hier Ihr Code ---- ) ``` \ No newline at end of file diff --git a/Assignment_016/solution/readme.md b/Assignment_016/solution/readme.md index 5ee59d6..2d68966 100644 --- a/Assignment_016/solution/readme.md +++ b/Assignment_016/solution/readme.md @@ -1,3 +1,3 @@ -# Lösung: 05_collections/03_below-zero.md +# Lösung: take-while -!INCLUDESRC "../src/clojure/below-zero.clj" clojure \ No newline at end of file +!INCLUDESRC "../src/clojure/below-zero.clj" clojure diff --git a/Assignment_017/readme.md b/Assignment_017/readme.md index 778e57f..ac09b97 100644 --- a/Assignment_017/readme.md +++ b/Assignment_017/readme.md @@ -1,5 +1,5 @@ -## filter -Schreiben Sie eine Funktion `filter-positive`, welche eine Liste oder Sequenz übergeben bekommt. Die Funktion soll eine neue Liste (oder Sequenz) mit denselben Elemente zurückgeben, aber alle Elemente `> 0` ausfiltern. +# filter +Schreiben Sie eine Funktion `filter-positive`, welche eine Liste oder Sequenz übergeben bekommt. Die Funktion soll eine neue Liste (oder Sequenz) mit denselben Elemente zurückgeben, aber alle Elemente `> 0` ausfiltern. 📆 **Fällig: ----** 📆 [Musterlösung](solution/) diff --git a/Assignment_017/solution/readme.md b/Assignment_017/solution/readme.md index 9c7829e..23a584b 100644 --- a/Assignment_017/solution/readme.md +++ b/Assignment_017/solution/readme.md @@ -1,3 +1,3 @@ -# Lösung: 05_collections/04_filter-zero.md +# Lösung: filter -!INCLUDESRC "../src/clojure/filter-positive.clj" clojure \ No newline at end of file +!INCLUDESRC "../src/clojure/filter-positive.clj" clojure diff --git a/readme.md b/readme.md index ca3d5a2..16936ce 100644 --- a/readme.md +++ b/readme.md @@ -4,24 +4,24 @@ Hier finden Sie Übungsaufgaben für den Kurs Clojure-Programmierung. Die **Abgabedaten** haben keine Bedeutung, da es sich um freiwillige Übungen handelt. -## Themenüberblick +# Themenüberblick -| # | Thema | Fällig am 📆 | Musterlösung | -|----|------------------------------------------------------------------|----------------|----------------| -| 1. | [01_basics/01_prefix.md](Assignment_001/readme.md) | **----** | [✅](Assignment_001/solution/) | -| 2. | [01_basics/02_first_steps.md](Assignment_002/readme.md) | **----** | [✅](Assignment_002/solution/) | -| 3. | [01_basics/03_maps.md](Assignment_003/readme.md) | **----** | [✅](Assignment_003/solution/) | -| 4. | [01_basics/04_control_structures.md](Assignment_004/readme.md) | **----** | [✅](Assignment_004/solution/) | -| 5. | [01_basics/05_map_reduce.md](Assignment_005/readme.md) | **----** | [✅](Assignment_005/solution/) | -| 6. | [02_funktionen/01_my-average.md](Assignment_006/readme.md) | **----** | [✅](Assignment_006/solution/) | -| 7. | [02_funktionen/02_plus-n-fn.md](Assignment_007/readme.md) | **----** | [✅](Assignment_007/solution/) | -| 8. | [02_funktionen/03_triple-apply.md](Assignment_008/readme.md) | **----** | [✅](Assignment_008/solution/) | -| 9. | [02_funktionen/04_sqrt.md](Assignment_009/readme.md) | **----** | [✅](Assignment_009/solution/) | -| 10. | [03_rekursion/01_prod-recur.md](Assignment_010/readme.md) | **----** | [✅](Assignment_010/solution/) | -| 11. | [03_rekursion/02_karnickel.md](Assignment_011/readme.md) | **----** | [✅](Assignment_011/solution/) | -| 12. | [04_variablen/01_test-positive.md](Assignment_012/readme.md) | **----** | [✅](Assignment_012/solution/) | -| 13. | [04_variablen/02_number-formatter.md](Assignment_013/readme.md) | **----** | [✅](Assignment_013/solution/) | -| 14. | [05_collections/01_prod-reduce.md](Assignment_014/readme.md) | **----** | [✅](Assignment_014/solution/) | -| 15. | [05_collections/02_map-cycle.md](Assignment_015/readme.md) | **----** | [✅](Assignment_015/solution/) | -| 16. | [05_collections/03_below-zero.md](Assignment_016/readme.md) | **----** | [✅](Assignment_016/solution/) | -| 17. | [05_collections/04_filter-zero.md](Assignment_017/readme.md) | **----** | [✅](Assignment_017/solution/) | +| # | Thema | Fällig am 📆 | Musterlösung | +|----|-----------------------------------------------------------------------------------|----------------|----------------| +| 1. | [Prefix-Notation](Assignment_001/readme.md) | **----** | [✅](Assignment_001/solution/) | +| 2. | [Erste Schritte](Assignment_002/readme.md) | **----** | [✅](Assignment_002/solution/) | +| 3. | [Maps: Lagerverwaltung](Assignment_003/readme.md) | **----** | [✅](Assignment_003/solution/) | +| 4. | [Kontrolltrukturen: Lagerverwaltung, Teil 2](Assignment_004/readme.md) | **----** | [✅](Assignment_004/solution/) | +| 5. | [Map und Reduce: Gewinnermittlung für die Abzock GmbH](Assignment_005/readme.md) | **----** | [✅](Assignment_005/solution/) | +| 6. | [Multi-Arity-Funktion](Assignment_006/readme.md) | **----** | [✅](Assignment_006/solution/) | +| 7. | [Funktion als Rückgabewert](Assignment_007/readme.md) | **----** | [✅](Assignment_007/solution/) | +| 8. | [apply und Funktionen als Übergabewerte](Assignment_008/readme.md) | **----** | [✅](Assignment_008/solution/) | +| 9. | [Vor- und Nachbedingung](Assignment_009/readme.md) | **----** | [✅](Assignment_009/solution/) | +| 10. | [Tail-Recursion](Assignment_010/readme.md) | **----** | [✅](Assignment_010/solution/) | +| 11. | [Was hoppelt den da?](Assignment_011/readme.md) | **----** | [✅](Assignment_011/solution/) | +| 12. | [cond](Assignment_012/readme.md) | **----** | [✅](Assignment_012/solution/) | +| 13. | [Ausnahmebehandlung](Assignment_013/readme.md) | **----** | [✅](Assignment_013/solution/) | +| 14. | [reduce](Assignment_014/readme.md) | **----** | [✅](Assignment_014/solution/) | +| 15. | [mapping und cycle](Assignment_015/readme.md) | **----** | [✅](Assignment_015/solution/) | +| 16. | [take-while](Assignment_016/readme.md) | **----** | [✅](Assignment_016/solution/) | +| 17. | [filter](Assignment_017/readme.md) | **----** | [✅](Assignment_017/solution/) |