Инструменты пользователя

Инструменты сайта


ob:o7:example:conversion

Преобразование типов

Преобразование элементарных типов возможно через несколько встроенных функций:

FLOOR(x)  REAL                 INTEGER          округлить до меньшего
FLT(x)    INTEGER              REAL             тождественно
ORD(x)    CHAR, BOOLEAN, SET   INTEGER          порядковый номер x
CHR(x)    INTEGER              CHAR             литера с порядковым номером x

(ПРИвести примеры)

либо через системный механизм преобразования типов SYSTEM.VAL после импорта модуля 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.
ob/o7/example/conversion.txt · Последнее изменение: 2021/12/01 04:28 — amalgama