|
PathFinder.m2 |
TYPE Direction = (east, south, west, north); PROCEDURE PreviousDirection(dir: Direction) : Direction; (* nach rechts schauen *) BEGIN IF dir = MIN(Direction) THEN RETURN MAX(Direction) ELSE DEC(dir); RETURN dir END; END PreviousDirection; PROCEDURE NextDirection(dir: Direction) : Direction; (* nach links schauen *) BEGIN IF dir = MAX(Direction) THEN RETURN MIN(Direction) ELSE INC(dir); RETURN dir END; END NextDirection; |
Bei der Linke- oder Rechte-Hand-Regel ist die
Reihenfolge der Richtungen signifikant. Wenn alternativ
(east, north, west, south)
verwendet worden wäre, hätten wir die Rechte-Hand-Regel.
| |
INC und DEC funktionieren auch für
Aufzählungs-Typen.
| |
Bei der Linke-Hand-Regel schaut PreviousDirection
nach links und NextDirection nach rechts.
|
Copyright © 1999 Andreas Borchert, in HTML konvertiert am 04.02.1999 |