Lösungen zu den Übungen
Die exakten Aufgabenstellungen zu den unten stehenden Lösungen finden Sie im Buch unter den entsprechenden Kapiteln. Die Texte vor den Links dienen lediglich zuur besseren Wiederfindung der entsprechenden Lösung.
Kapitel 6
Kapitel 8
-
1. Aufgabe:
-
2. Aufgabe:
Addition einer Sekunde zu einer gegebenen Uhrzeit:
tick_second.py Alternative Lösung: tick_second_format.py
Schaltjahrtest:
schaltjahre.py
Kapitel 9
-
1. Aufgabe:
Umrechnung römische Zahl in Dezimalzahl:
roman2decimal.py -
2. Aufgabe:
Frösche beim Überqueren einer Straße:
tick_second.py Alternative Lösung: frog.py -
3. Aufgabe:
Weizenkörner auf Schachbrett:
weizenkorn.py
Kapitel 10
-
1. Aufgabe:
Vorname-Nachname-Datei erzeugen:
datei_aufgabe1.py
Die zugehörige Textdatei finden Sie hier: namen.txt -
2. Aufgabe:
Zusammenfassung jeweils dreier Zeilen einer Datei zu einer Zeile:
musicians.py
Die zugehörige Textdatei finden Sie hier: musicians.txt -
3. Aufgabe:
Zusammenfassung jeweils dreier Zeilen einer Datei zu einer Zeile und Ausgabe in Ausgabedatei:
musicians2.py
Kapitel 11
-
1. Aufgabe:
Umkehrung der Reihenfolge einer Liste:
reverse_list.py -
2. Aufgabe:
Verschachtelte Liste in flache Liste umformen:
flatten.py -
3. Aufgabe:
Lösung siehe Buch -
4. Aufgabe:
Bestimmung der Buchstabenhäufigkeit eines Strings:
letter_frequency.py
Der zugehörige Roman von James Joyce: ulysses.txt -
5. Aufgabe:
Sortieren von Verkaufserlösen:
Lösung mit lambda: umsaetze.py
ohne lambda: umsaetze2.py
Kapitel 15
-
1. Aufgabe:
-
2. Aufgabe:
Rekursive Funktion zur Berechnung der Summe der ersten n Zahlen:
sum_n.py -
3. Aufgabe:
Berechnung einer beliebigen Zeile des Pascalschen Dreiecks
pascal.py -
4. Aufgabe:
Fibonacci-Zahlen im Pascalschen Dreieck suchen:
fibonacci_in_pascal.py -
5. Aufgabe:
Rekursive Funktion zur Berechnung des Siebs des Erathosthenes:
sieve_rec.py -
6. Aufgabe:
Test of Fibonacci-Zahl
fibonacci_index.py
Rekursive Funktion zur Berechnung von f(n) = 3 * n:
mult3.py
alternative Lösung: pascal_alternativ.py
iterative Lösung: sieve.py
Kapitel 17
-
1. Aufgabe:
Adressenlists umsortieren:
split_addresses_mixed.py Die dazugehörige Datei: addresses_mixed.txt (Korrigierte Version!) -
2. Aufgabe:
Zweiertupel-Liste aus Adressendatei erzeugen:
split_addresses_2.py Daten: addresses.txt -
3. Aufgabe:
Siehe Buch
-
4. Aufgabe:
Funktion zur Bestimmung des n-ten Vorkommens eines Strings in einem anderen String:
findnth.py -
5. Aufgabe:
Ersetzen des n-ten Vorkommens eines Strings "sub" durch einen String "replacement":
replacenth.py
Kapitel 19
-
1. Aufgabe:
-
2. Aufgabe:
Höhlenmenschen-Arithmetik:
CaveInt_de.py -
3. Aufgabe:
Erweiterung der list-Klasse um "splice":
standardklassen.py
Roboterklasse:
robot.py
Kapitel 24
-
1. Aufgabe:
Kein Programmcode nötig; Erklärung befinden sich im Buch. -
2. Aufgabe:
Kein Programmcode nötig; Erklärung befinden sich im Buch. -
3. Aufgabe:
US-ZIP-Code mittels eines regulären Ausdrucks erkennen:
us_zip_codes.py -
3. Aufgabe:
Wörter, die mit "ship" enden, im Roman Ulysses von James Joyce:
ships_in_ulysses.py
Die dazugehörige Datei mit dem Roman:
ulysses.txt -
4. Aufgabe:
Wörter im Roman Ulysses von James Joyce, die aus gleichen Teilwörtern bestehen:
gleiche_teilwoerter.py Die dazugehörige Datei mit dem Roman: ulysses.txt
Kapitel 25
Kapitel 26
-
1. Aufgabe:
-
2. Aufgabe:
Wahrscheinlichkeit für die Würfelsumme 7:
wuerfelsumme.py -
3. Aufgabe:
Erweiterung für beliebige Würfelsumme:
standardklassen.py
Anwendung der Listenabstraktion:
listen_abstraktion.py
Kapitel 27
-
1. Aufgabe:
Fibonacci-Generator:
fibonacci_generator.py -
2. Aufgabe:
Round-Robbin-Generator
round_robbin.py -
3. Aufgabe:
Pendel-Generator:
pendulum.py -
4. Aufgabe:
pair-sum-Generator:
pair_sum.py
Kapitel 29
-
1. Aufgabe:
Berechnung, ob zwei Vektoren senkrecht aufeinander stehen:
senkrecht.py -
2. Aufgabe:
Winkel zwischen Vektoren:
winkel.py -
3. Aufgabe:
Lösung eines Gleichungssystemes:
gleichungssystem.py -
4. Aufgabe:
Berechnung von Nullstellen:
nullstellen.py -
5. Aufgabe:
Berechnung unbestimmtes Integral und Ableitung:
integral_und_ableitung.py