====== Преобразование типов ======
Преобразование [[ob:o7:example:elementary|элементарных типов]] возможно через несколько встроенных функций:
FLOOR(x) REAL INTEGER округлить до меньшего
FLT(x) INTEGER REAL тождественно
ORD(x) CHAR, BOOLEAN, SET INTEGER порядковый номер x
CHR(x) INTEGER CHAR литера с порядковым номером x
(ПРИвести примеры)
либо через системный механизм преобразования типов ''SYSTEM.VAL'' после [[ob:o7:example:import|импорта]] модуля ''SYSTEM''
MODULE ExamplesSystemVal;
IMPORT SYSTEM;
VAR i: INTEGER; s: SET;
BEGIN
i := SYSTEM.VAL(INTEGER, s)
END ExamplesSystemVal.
Комбинации преобразований позволяют решить почти любую задачу. Например, узнать битовую карту литеры:
MODULE ExamplesCharBits;
IMPORT SYSTEM;
VAR char: CHAR; bits: SET;
BEGIN
bits := SYSTEM.VAL(SET, ORD(char));
END ExamplesCharBits.