| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- MODULE TBigOps;
- (* Sorted-range big sets: literals, ranges, copy, equality, operators,
- EXCL and signed SET OF INTEGER. *)
- TYPE
- CS = SET OF CARDINAL;
- IS = SET OF INTEGER;
- VAR
- a, b, c : CS;
- i : IS;
- ExitCode : INTEGER;
- BEGIN
- a := CS{1, 3, 5..7};
- b := CS{3, 7};
- c := a;
- i := IS{-5..-3, 2, 100000};
- IF (a = c) AND NOT (a = b) THEN
- c := a + b; (* {1,3,5,6,7} *)
- IF (1 IN c) AND (6 IN c) AND NOT (2 IN c) THEN
- c := a - b; (* {1,5,6} *)
- IF (1 IN c) AND NOT (3 IN c) AND (6 IN c) THEN
- c := a * b; (* {3,7} *)
- IF (3 IN c) AND NOT (5 IN c) THEN
- c := a / b; (* {1,5,6} *)
- EXCL(c, 5);
- IF (1 IN c) AND NOT (5 IN c) AND (6 IN c) THEN
- IF (-5 IN i) AND (-3 IN i) AND (2 IN i) AND (100000 IN i)
- AND NOT (-6 IN i) AND NOT (0 IN i) THEN
- ExitCode := 42
- ELSE ExitCode := 1
- END
- ELSE ExitCode := 1
- END
- ELSE ExitCode := 1
- END
- ELSE ExitCode := 1
- END
- ELSE ExitCode := 1
- END
- ELSE ExitCode := 1
- END
- END TBigOps.
|