DIV und MOD II

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]

CONST
   east = 0; south = 1; west = 2; north = 3;
   directions = 4;
TYPE
   Direction = SHORTINT; (* east..north *)

PROCEDURE TurnRight(dir: Direction) : Direction;
BEGIN
   RETURN (dir + 1) MOD directions
END TurnRight;

PROCEDURE TurnLeft(dir: Direction) : Direction;
BEGIN
   RETURN (dir - 1) MOD directions
END TurnLeft;

*An diesem Beispiel zeigt sich die wohltuende Symmetrie der F-Definition und der nach Euklid.
 
*Bei Verwendung der T-Definition müßte der Rückgabewert von TurnLeft so berechnet werden:
RETURN (dir + directions - 1) MOD directions
 
*

x-5-4-3-2-1012345

T-Def.: x MOD 4

-1

0-3-2-1012301

F-Def.: x MOD 4

3

0123012301

 

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]
Copyright © 1999 Andreas Borchert, in HTML konvertiert am 29.06.1999