761
27.4
Aufgaben
als null ist, ist das Wort enthalten. Wird ein geeigneter Knoten gefunden, wird die return-
Anweisung ausgeführt und die Ausführung der Methode sofort abgebrochen. Wird kein
Knoten gefunden, so wird keine
return-Anweisung ausgeführt und die Methode gibt das
leere Objekt
None zurück.
Abb. 27.10: Konstruktion des Weges über Vorgänger
#9: Hier wird die getWeg()-Methode des Graph-Objektes g aufgerufen. Wir gehen davon aus,
dass der Startpunkt der Wegsuche immer der Hauptflur des Gebäudes, also Knoten
F21 ist.
#10: Der Stack namens weg enthält die Knoten des Weges in der richtigen Reihenfolge,
beginnend mit dem Startknoten. Sie werden mit
pop() nacheinander vom Stapel herunter-
genommen und ihre Beschreibung (Attribut
inhalt) ausgegeben.
Programmlauf:
27.4 Aufgaben
Aufgabe 1
Schreiben Sie ein Skript, das eine Warteschlange beim TÜV simuliert. Die Benutzungsober-
fläche besteht aus einem kleinen Menü, das folgende Operationen ermöglicht:
Eingabe des Autokennzeichens eines neuen Kunden und Anhängen an die Warte-
schlange
Hallo, ich bin der digitale Wegweiser des Instituts.
Wohin wollen Sie?
Ziel: Zeck
Wegbeschreibung:
Hauptflur
Nordflur
Computer-Labor
Büro Prof. Zeck
Ziel: Kaffee
Wegbeschreibung:
Hauptflur
Südflur
Bibliothek mit Kaffeemaschine
Ziel:
Auf Wiedersehen!
previous
ziel
previous
previous
previous
start
Kapitel 27
Modellieren mit Kellern, Schlangen und Graphen
762
Ausgabe des Autokennzeichens desjenigen Kunden, der als Nächster dran ist, und Ent-
fernen von der Warteschlange
Beenden des Programms (ist nur möglich, wenn die Warteschlange leer ist)
Beispieldialog:
Aufgabe 2
Schreiben Sie a) eine rekursive und b) eine nicht rekursive Funktion, die die Anzahl der Ele-
mente in einem Stack ermittelt. Beachten Sie:
In der Funktion können und dürfen ausschließlich Stack-Operationen verwendet wer-
den. Denn die interne Struktur des Stacks ist unbekannt.
Der Stack muss nach der Ausführung der Funktion wieder im Originalzustand sein.
Hinweis
Verwenden Sie die Klasse Queue aus Abschnitt 27.2.
Warten beim TÜV
(N)euerKunde
(A)bfertigen des nächsten Kunden
(E)nde
Auswahl: n
Kennzeichen: B-OX 234
(N)euerKunde
(A)bfertigen des nächsten Kunden
(E)nde
Auswahl: e
Es warten noch Kunden!
(N)euerKunde
(A)bfertigen des nächsten Kunden
(E)nde
Auswahl: a
Der nächste ist: B-OX 234
(N)euerKunde
(A)bfertigen des nächsten Kunden
(E)nde
Auswahl: e
Ich wünsche einen schönen Feierabend!

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.