Bonusmaterial (Aufgaben, weitere Ideen, nachfolgende Themen)
Bonusaufgaben
Bonus-Aufgabe B1 zu Goethes Faust: Buchstabenhäufigkeiten - Darstellung als Säulendiagramm
Schreibe ein Programm, das zählt, wie häufig (in Prozent) jeder der 26+3+1 Buchstaben (a-z, Umlaute, scharfes s) im Faust vorkommt und stelle das Ergebnis durch ein Säulendiagramm dar.
(relativ anspruchsvolle) Bonus-Aufgabe B2 zu Goethes Faust: Anagramme
Ein Anagramm ist ein Wort, das durch Umstellen der Buchstaben ein anderes Wort ergibt, vgl. https://de.wikipedia.org/wiki/Anagramm.
- (B2a) Schreibe ein Programm, das alle Anagramme in Goethes Faust findet. Genauer sind wir an allen Wörtern im Faust interessiert, aus denen man durch Umstellen der Buchstaben ein anderes Wort bilden kann, das ebenfalls im Faust vorkommt.
Hinweise: Verwende die Funktion
def ordneAlphabetisch(s): return ''.join(sorted(s))
Sie nimmt ein Wort entgegen und ordnet es alphabetisch: Beispielsweise liefert ordneAlphabetisch(“andromeda”)
das Wort “aaddemnor”
.
Mit Hilfe dieser Funktion kann man leicht entscheiden, ob zwei Wörter “Anagramme voneinander sind”.
- (B2b) Ändere die Ausgabe so, dass
- jedes Anagramm zusammen mit seinen “Partner-Anagrammen” als Liste in einer Zeile ausgegeben wird;
- jedes Anagramm genau einmal ausgegeben wird;
- optional: Gib nur “interessante” Anagramme aus: Gib beispielsweise nur solche Anagramme aus, die mindestens aus zehn Buchstaben bestehen oder mindestens vier “Partner-Anagramme” haben.
Weitere Ideen zur Text-Analyse
- Häufigkeit von Wörtern:
- Welches Wort kommt am häufigsten in Goethes Faust vor?
- Erstelle eine Liste der 20 am häufigsten vorkommenden Wörter und stelle diese in einem Säulendiagramm dar.
- Sortiere die Liste der Wörter nach ihrer Häufigkeit.
- Wie gross ist der Sprechanteil der verschiedenen Personen (Faust, Mephisto, Gretchen etc.)? - Sprecher sind im Text in Großbuchstaben angegeben, etwa FAUST etc. (Überschriften, Regieanweisungen etc. sind aber wohl nicht erkennbar.)
- Kannst du anhand der Buchstabenhäufigkeiten herausfinden, in welcher Sprache ein Text geschrieben ist? (Problem hierbei: Bekomme andere Texte als Liste.)
- Welche Fragen fallen dir ein?