Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| modul:m323:learningunits:lu01:aufgaben:prozedurzufunktion [2026/08/18 10:59] – Als Classroom-50-Aufgabe umgestellt, Repo verlinkt admin | modul:m323:learningunits:lu01:aufgaben:prozedurzufunktion [2026/08/18 11:20] (aktuell) – Kontrollfragen werden neu im README.md abgegeben admin | ||
|---|---|---|---|
| Zeile 7: | Zeile 7: | ||
| ===== Ausgangslage ===== | ===== Ausgangslage ===== | ||
| - | Das folgende | + | Das Skript |
| - | <code python> | + | ~~NOCACHE~~ |
| - | lager = [] | + | === ausgangslage.py === |
| - | gesamtwert | + | {{gh> |
| + | ===== Code-Vorlage ===== | ||
| - | def artikel_hinzufuegen(name, | + | Die Namen und Signaturen in '' |
| - | global gesamtwert | + | |
| - | lager.append({'name': name, 'menge': menge, ' | + | |
| - | gesamtwert += menge * preis | + | |
| - | + | === main.py === | |
| - | def zeige_gesamtwert(): | + | {{gh> |
| - | print(f' | + | |
| - | + | ||
| - | + | ||
| - | def zeige_teuersten(): | + | |
| - | teuerster | + | |
| - | for artikel in lager: | + | |
| - | if teuerster is None or artikel[' | + | |
| - | teuerster | + | |
| - | | + | |
| - | + | ||
| - | + | ||
| - | if __name__ == ' | + | |
| - | artikel_hinzufuegen(' | + | |
| - | artikel_hinzufuegen(' | + | |
| - | artikel_hinzufuegen(' | + | |
| - | zeige_gesamtwert() | + | |
| - | zeige_teuersten() | + | |
| - | </ | + | |
| ===== Anforderungen ===== | ===== Anforderungen ===== | ||
| - | - **Analyse: | + | - **Analyse: |
| - **Umbau:** Implementieren Sie in '' | - **Umbau:** Implementieren Sie in '' | ||
| * Keine globalen Variablen – alle benötigten Daten kommen als Parameter herein. | * Keine globalen Variablen – alle benötigten Daten kommen als Parameter herein. | ||
| Zeile 48: | Zeile 28: | ||
| * Jede Funktion gibt einen Wert zurück. | * Jede Funktion gibt einen Wert zurück. | ||
| * '' | * '' | ||
| - | |||
| - | ==== Vorgegebene Funktionen ==== | ||
| - | |||
| - | Die Namen und Signaturen sind fix – die Tests rufen genau diese auf. | ||
| ^ Funktion ^ Rückgabe ^ | ^ Funktion ^ Rückgabe ^ | ||
| Zeile 67: | Zeile 43: | ||
| ===== Kontrollfragen ===== | ===== Kontrollfragen ===== | ||
| + | |||
| + | Diese drei Fragen beantworten Sie **direkt im '' | ||
| - Warum kann man den Ausdruck '' | - Warum kann man den Ausdruck '' | ||
| Zeile 83: | Zeile 61: | ||
| '' | '' | ||
| </ | </ | ||
| + | |||
| + | ===== Vorgehen ===== | ||
| + | |||
| + | - Akzeptiere das Classroom-Assignment | ||
| + | - Klone dein persönliches Repository in die Entwicklungsumgebung | ||
| + | - Lies '' | ||
| + | - Implementiere die vier Funktionen in '' | ||
| + | - Beantworte die drei Kontrollfragen im '' | ||
| + | - Lokal prüfen mit '' | ||
| + | - Pushen – Code und Antworten liegen damit im selben Commit | ||
| ===== Bewertung ===== | ===== Bewertung ===== | ||
| Zeile 89: | Zeile 77: | ||
| | Unittests | 11 | | | Unittests | 11 | | ||
| | Linting | 5 | | | Linting | 5 | | ||
| - | | **Total** | **16** | | + | | Kontrollfragen (von Hand bewertet) | 4 | |
| + | | **Total** | **20** | | ||
| ===== Abgabe ===== | ===== Abgabe ===== | ||
| - | Der Code wird über das Classroom-Repository | + | Alles zusammen als Push in das persönliche GitHub-Repository: der Code in '' |
| ---- | ---- | ||
| - | <nodisp>Github | + | <details> |
| + | < | ||
| + | GitHub Repository | ||
| + | |||
| + | //Lernende am BZZ müssen den Link zum Classroom-Assignment verwenden// | ||
| + | |||
| + | </details> | ||
| [[https:// | [[https:// | ||