[ Inhalt ] [ Index ]

Next: Lexikalische Analyse Up: Die Sprache OBERON-0 Previous: Die Syntax von OBERON-0

Ein Beispiel

MODULE Sample;

PROCEDURE Multiply(VAR z : INTEGER);
 VAR x, y: INTEGER;
BEGIN
 Read(x); Read(y); z := 0;
 WHILE x > 0 DO
  IF z MOD 2 = 1 THEN z := z + y END;
  y := 2 * y; x := x DIV 2
 END;
 Write(x); Write(y); Write(z);
END Multiply;

PROCEDURE Divide;
 VAR x, y, r, q, w : INTEGER;
BEGIN
 Read(x); Read(y); r := x; q := 0; w := y;
 WHILE w <= r DO w := 2 * w END;
 WHILE w > y DO
  q := 2 * q; w := w DIV 2;
  IF w <= r THEN r := r - w; q := q + 1 END
 END;
 Write(x); Write(y); Write(q); Write(r); WriteLn
END Divide;
END Sample.




Next: Lexikalische Analyse Up: Die Sprache OBERON-0 Previous: Die Syntax von OBERON-0

Prof. Dr. Reinhard Völler