231
7.7
Aufgaben
Ausgabe:
Erläuterung:
#1: Die Menge t_raum enthält alle Türen des Raumes raum. Formal ist es die Menge der
Kanten des Graphen, die den Knoten
raum enthalten.
#2: Hier wird eine leere Menge erzeugt.
#3: In der for-Schleife werden sukzessive alle Kanten aus der Menge t_raum (die ja Mengen
mit jeweils zwei Knoten sind) vereinigt. Am Ende enthält die Menge
nachbarraeume alle
Räume, die über Türen mit dem Raum
raum verbunden sind sowie den Raum raum selbst.
Dieser wird in
#4 entfernt. Übrig bleibt die Menge der Nachbarräume. Sie wird zurück-
gegeben.
#5: Die Vereinigung zweier Graphen ist einfach nur die Vereinigung der beiden Knoten-
mengen und der beiden Kantenmengen.
#6: Die Kantenmenge ist ein Mengen-Objekt vom Typ set, das lauter (unveränderliche)
Mengen-Objekte vom Typ
frozenset enthält. Sie wird mit einem Generatorausdruck aus
einer Liste von Tupeln erzeugt.
#7: Der Raumplan (ein Graph) wird durch ein Tupel mit zwei Mengen V1 und E1 repräsentiert.
7.7 Aufgaben
Aufgabe 1
Was schreibt das folgende Skript auf den Bildschirm?
for r in gesamtplan[0]: print(r, end=" ")
print()
print("Türen des Gesamtplans:")
for t in gesamtplan[1]: print(tuple(t), end=" ")
print()
print("Nachbarräume von Raum 2:")
for r in nachbarraeume: print(r, end=" ")
Räume des Gesamtplans:
1 2 3 4 5 6 7
Türen des Gesamtplans:
(2, 4) (5, 7) (1, 2) (6, 7) (3, 4) (2, 3) (5, 6) (4, 5)
Nachbarräume von Raum 2:
1 3 4
liste = ["mond", "stoff", "treib", "raum", "schiff"]
print(liste[0])
print(liste[2] + liste[1])
Kapitel 7
Sequenzen, Mengen und Generatoren
232
Aufgabe 2
Welchen Wert haben die Listen-Objekte s1, s2, s3 jeweils, nachdem die folgenden Anwei-
sungen ausgeführt worden sind?
Aufgabe 3
Schreiben Sie ein Skript, das das Mischen der 32 Karten eines Skatspiels simuliert. Jede
Karte wird durch ein Tupel der Form (farbe, wert) dargestellt. Farben sind: Kreuz, Pik, Herz
und Karo. Werte sind: Ass, König, Dame, Bube, Zehn, Neun, Acht, Sieben.
In dem Skript wird zunächst mithilfe eines geeigneten Listendisplays eine Liste mit den
32 Karten-Tupeln erstellt. Durch wiederholtes paarweises Vertauschen zweier zufällig aus-
gewählter Listenelemente wird gemischt.
Aufgabe 4
Gesucht ist die Menge aller rechtwinkligen Dreiecke mit ganzzahligen Seitenlängen unter
20. Jedes Dreieck soll durch ein Tupel mit den drei Seitenlängen dargestellt werden.
Beispiel:
(3, 4, 5)
Beachten Sie: In rechtwinkligen Dreiecken gilt der Satz des Pythagoras:
a² + b² = c².
print(liste[-2] + liste[-1])
for wort in liste:
if wort[0] == "s":
print(wort)
for wort in liste:
print(wort[1])
liste = liste +["gestein"]
print(liste[0] + liste[-1])
>>> s1 = [1]
>>> s1 = [1,s1]
>>> s1 = [1,s1]
>>> A = ['Haus', 'Garten']
>>> B = ['bau', 'tier', 'pflanze']
>>> s2 = [i+j for i in A for j in B]
>>> A = [1, 2, 3, 4]
>>> B = [2, 3, 4, 5]
>>> s3 = [i for i in A+B if (i not in A) or (i not in B)]

Get Python 3 - Lernen und professionell anwenden now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.