| 12345678910111213141516171819202122232425262728 |
- MODULE ConvProg;
- (* Conversions: Int/Card/Real <-> string round-trips. Exit 127. *)
- IMPORT Conversions;
- VAR ExitCode : INTEGER;
- VAR s : ARRAY [0 .. 31] OF CHAR;
- VAR n : INTEGER;
- VAR c : CARDINAL;
- VAR x : REAL;
- BEGIN
- Conversions.IntToStr(-1234, s);
- IF s[0] = "-" THEN ExitCode := ExitCode + 1 ELSE ExitCode := 100 END;
- IF s[1] = "1" THEN ExitCode := ExitCode + 2 ELSE ExitCode := 100 END;
- IF Conversions.StrToInt("42", n) THEN
- IF n = 42 THEN ExitCode := ExitCode + 4 END
- ELSE ExitCode := 100 END;
- IF Conversions.StrToInt("-7", n) THEN
- IF n = -7 THEN ExitCode := ExitCode + 8 END
- ELSE ExitCode := 100 END;
- IF NOT Conversions.StrToInt("4x", n) THEN
- ExitCode := ExitCode + 16
- ELSE ExitCode := 100 END;
- IF Conversions.StrToCard("99", c) THEN
- IF c = 99 THEN ExitCode := ExitCode + 32 END
- ELSE ExitCode := 100 END;
- IF Conversions.StrToReal("3.5", x) THEN
- IF x = 3.5 THEN ExitCode := ExitCode + 64 END
- ELSE ExitCode := 100 END
- END ConvProg.
|