Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung | |||
de:modul:m319:learningunits:lu05:aufgaben:factorial [2025/06/23 07:45] – gelöscht - Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1 | de:modul:m319:learningunits:lu05:aufgaben:factorial [2025/06/23 07:45] (aktuell) – ↷ Seite von modul:m319:learningunits:lu05:aufgaben:factorial nach de:modul:m319:learningunits:lu05:aufgaben:factorial verschoben msuter | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ====== LU05.A11: Factorial ====== | ||
+ | <WRAP center round todo 60%> | ||
+ | Schreibe ein Programm, das die Fakultät einer Zahl berechnet. | ||
+ | </ | ||
+ | Die Fakultät von n, bezeichnet als '' | ||
+ | |||
+ | |||
+ | <WRAP center round help 60%> | ||
+ | Fakultäten werden vor allem in der Wahrscheinlichkeitsrechnung verwendet, wenn verschiedene mögliche Ordnungen einer Menge untersucht werden. | ||
+ | Zum Beispiel kann eine Gruppe von fünf Personen 5! verschiedene Reihen bilden, und ein Kartenspiel mit 52 Karten kann 52! verschiedene Reihenfolgen haben. | ||
+ | Die Faktorrechnung kann auch zur Berechnung von [[https:// | ||
+ | Es ist zum Beispiel möglich, 52! / (5! * (52-5)!) verschiedene Blätter aus einem 52-Kartenspiel austeilen, und man kann 40! / (7! * (40 - 7)!) verschiedene 7er-Lotterielinien aus 40 Zahlen bilden. | ||
+ | </ | ||
+ | |||
+ | |||
+ | ===== Auftrag ===== | ||
+ | Erstelle die Programmlogik für das Programm: | ||
+ | - Der Benutzer gibt eine natürliche Zahl ein. | ||
+ | - Das Programm berechnet die Fakultät dieser Zahl und gibt das Resultat aus. | ||
+ | |||
+ | Schreibe die Programmlogik einmal als '' | ||
+ | |||
+ | |||
+ | ==== Beispiel ==== | ||
+ | |||
+ | < | ||
+ | Give a number: **3** | ||
+ | Factorial: 6 | ||
+ | </ | ||
+ | Die interne Berechnung war hier 1 * 2 * 3 = 6 | ||
+ | < | ||
+ | Give a number: **10** | ||
+ | Factorial: 3628800 | ||
+ | </ | ||
+ | Und nun war die interne Berechnung 1 * 2 * 3 * ... * 8 * 9 * 10 = 3628800 | ||
+ | |||
+ | |||
+ | ===== Vorgehen ===== | ||
+ | |||
+ | - Akzeptiere das GitHub Classroom Assignment im Moodlekurs. | ||
+ | - Klone das Repository in PyCharm. | ||
+ | - Codiere die Programmlogik in '' | ||
+ | - Teste dein Programm mit den Testfällen in '' | ||
+ | - Führe einen Commit und einen Push durch. | ||
+ | |||
+ | === Abgabe === | ||
+ | Die Abgabe erfolgt durch den Push ins GitHub Repository. | ||
+ | In Moodle ist keine Abgabe vorgesehen oder möglich. | ||
+ | |||
+ | ===== Vorlage ===== | ||
+ | <code python> | ||
+ | def main_while(): | ||
+ | # Write your program here and remove the line " | ||
+ | pass | ||
+ | |||
+ | def main_for(): | ||
+ | # Write your program here and remove the line " | ||
+ | pass | ||
+ | |||
+ | |||
+ | if __name__ == ' | ||
+ | main_while() | ||
+ | main_for() | ||
+ | </ | ||
+ | |||
+ | Anmerkung: Kümmere dich ich im Moment nicht zu sehr um '' | ||
+ | Dieser Programmblock legt fest, welche Funktion beim Ausführen gestartet wird. | ||
+ | Wir werden dies im Verlauf des Moduls noch genauer betrachten. | ||
+ | |||
+ | |||
+ | |||
+ | < | ||
+ | ---- | ||
+ | {{tag> | ||
+ | [[https:// | ||
+ | |||
+ | Diese Aufgabe ist eine übersetzte und angepasste Aufgabe von [[https:// |