Konrad-Adenauer-Gymnasium Langenfeld
Informatik Grundkurs Q1
Schlangenklasse
Ist die doppeltverketteteListe oder der Stapel geeignet für die Lösung?
Für die Realisierung des oben skizzierten Algorithmus' werden die
folgenden Operationen benötigt:
- Gewaschenes Auto aus der Warteschlange wegnehmen
- Auto hinten an die Warteschlange anfügen
- Zugriff auf das erste Auto
- Test, ob Warteschlange leer
Die Klasse Stapel besitzt nur einen Teil dieser Operationen, die
Klasse doppeltverketteteListe besitzt wiederum Methoden, die bei der
Waschstraßen-Simulation "technisch" nicht auftreten können. Wir
definieren daher eine neue Unterklasse Schlange von Listenstruktur,
die genau die oben genannten Operationen besitzt:
Operation:
|
Methode:
|
Erzeugen einer neuen Schlange
|
Konstruktor
public Schlange(String ident)
|
Löschen der Schlange
|
public void destroy()
|
Element hinten anhängen
|
public void enqueue (Object o)
|
Element vorne entfernen
|
public void dequeue()
|
Zugriff auf das erste Element
|
public Object front()
|
Test, ob Schlange leer
|
public boolean isEmpty()
|
Die Bezeichnungen Enqueue (sprich: enkju:) und Dequeue (sprich:
dekju:) entsprechen im Wesentlichen den bisher verwendeten Bezeichnungen Push
bzw. Pop . Sie sind die bei Schlangen-Strukturen üblichen Bezeichnungen.
Top wird häufig mit Front benannt.
Aufgaben:
- Ergänzen Sie unsere Klassenhierarchie um die Klasse Schlange.
- Erstellen Sie ein Demoprogramm, mit dem Sie die Klasse Schlange in der
Anwendung zeigen können.
- Erstellen Sie die Waschstraßensimulation entsprechend den Vorgaben.
- Tankstellen-Simulation (als Kürnote im Bereich SoMi)
(aus Hermes/Stobbe: Informatik Zwei, Klett 1990, S.55)
An einer Autobahntankstelle gibt es drei Zapfsäulen für verbleites Benzin,
zwei Säulen für bleifreies Benzin und zwei Säulen für Diesel. Zur
Urlaubszeit fahren pro Minute N PKWs die Tankstelle an, wobei im
Durchschnitt 40% der PKWs verbleites, 30% bleifreies Benzin und der Rest
Diesel tanken. Die Abfertigung eines PKW's dauert zwischen 5 und 8 Minuten.
In der Regel fahren die Tankkunden bei der Wahl der verschiedenen
Zapfsäulen mit gleichem Treibstoff immer zu derjenigen Säule, an welcher
die wenigsten PKWs warten.
- Schreiben Sie ein Simulationsprogramm Tanken, bei dem in Abhängigkeit
von N die durchschnittliche Wartezeit eines Tankkunden ermittelt wird.
Verwenden Sie dazu die Klasse Schlange.
- Für welche N ist die Installation weiterer Zapfsäulen erforderlich,
wenn die durchschnittliche Wartezeit W Minuten nicht überschreiten
soll?
- Wie muss sich die Tankstelle auf die verstärkte Nachfrage nach
bleifreiem Benzin einstellen? Variieren Sie dazu die prozentualen
Anteile der verschiedenen Kraftstoffe.
© Ralph-Erich Hildebrandt, 09. Mai 2005