|
MODULE Tennis; IMPORT ASCII, Read, Streams, Write; (* ... CONST definitions ... *) VAR state: INTEGER; (* current state *) ch: CHAR; (* last input character *) BEGIN Write.Line("A vs B"); state := s0to0; (* initial state *) LOOP (* until game is finished or no input is available *) (* print current state *) (* store next valid input character into ch; set ch to 0X (null-byte) if no valid input is available *) (* compute next state *) END; END Tennis. |
Beim Durchlaufen der LOOP-Anweisung
wird zunächst der aktuelle Zustand ausgegeben
(wie bei Moore-Automaten üblich), dann wird
das nächste Symbol gelesen und dann wird
der Folgezustand bestimmt.
| |
Die LOOP-Schleife wird hier verlassen,
sobald einer der Endezustände erreicht wird
(geschieht bei der Ausgabe des Zustands) oder
ein weiteres Symbol nicht mehr eingelesen werden kann.
|
Copyright © 2004, 2005 Andreas Borchert, in HTML konvertiert am 18.02.2005 |