Inhaltsverzeichnis
Zustandsübergangsdiagramme - weitere Beispiele
1a. Geheimnisvoller Automat
Eine Maschine besitzt zwei Tasten a und b, mit denen man Wörter eingeben kann, sowie eine Lampe, die rot, blau, gelb oder grün leuchtet. Unten siehst Du das Zustandsdiagramm der Maschine. Da alle auslösenden Ereignisse gleichartig sind (Drücken einer Taste) schreiben wir statt „Taste a drücken“ einfach nur „a“ und statt „Taste b drücken“ einfach nur „b“.
Aufgabe: Beschreibe auf möglichst einfache Art, bei welchen Wörtern die Lampe nach Eingabe des Wortes grün leuchtet!
Beispiele:
- aabaa ⇒ Nach Eingabe des Wortes leuchtet die Lampe blau
- abaab ⇒ Nach Eingabe des Wortes leuchtet die Lampe gelb
- abb ⇒ Nach Eingabe des Wortes leuchtet die Lampe rot
- aabb ⇒ Nach Eingabe des Wortes leuchtet die Lampe rot
- aababa ⇒ Nach Eingabe des Wortes leuchtet die Lampe grün
- usw.
1b) Umsetzung als Java-Programm
1c) Zustandsübergangstabelle
Erstelle die Zustandsübergangstabelle!
Hier geht's zur Lösung!
2a. Baue selbst einen Automaten!
Zeichne das Zustandsdiagramm einer Maschine wie bei Aufgabe 1, deren Licht genau dann grün leuchtet, wenn das Wort mit einer geraden Anzahl von a‘s endet. Ein Wort, das mit 0 a‘s endet, soll nicht zum Aufleuchten des grünen Lichts führen.
2b. Umsetzung als Java-Programm
Setze den in Aufgabe 2 gebauten Automaten in ein Java-Programm um. Gerne kannst Du dafür eine Kopie des Programms aus Aufgabe 1a als Grundlage verwenden!
2c. Zustandsübergangstabelle
Erstelle die Zustandsübergangstabelle!
3. "Sternchenaufgabe": Teilbarkeitschecker
Zeichne das Zustandsdiagramm einer Maschine mit zwei Tasten 1 und 2, mit Hilfe derer man beliebige Dezimalzahlen eingeben kann, die nur die Ziffern 1 und 2 besitzen. Die Maschine soll einen Zustand „teilbar durch 3“ besitzen, der genau dann erreicht wird, wenn die entstandene Dezimalzahl durch 3 teilbar ist.
Bemerkung: Ist noch nichts eingegeben, so ist dies als 0 zu werten und damit auch durch 3 teilbar.