Для задания типа-множества следует использовать зарезервированные слова set и of, а затем указать элементы этого множества, как правило в виде перечисления или диапазона:
Type <имя типа> = set of ;
Например:
type
Alfa = set of 'A'..'Z'; {Множество прописных латинских букв}
Count = set of (Plus, Minus, Mult, Dlvid); (Множество знаков врифметич. операций}
Ten = set of 0..9; {Множество чисел от 0 до 9}
Number = set of '0'..'9'; {Множество символов от '0' до '9'}
Введя тип-множество, можно задать переменные или типизированные константы этого типа-множества.
При задании значений константе-множеству (обычной или типизированной) ее элементы перечисляются через запятую (допустимо указывать диапазоны) и помещают-ся в квадратные скобки - так называемый конструктор множества (см. ниже). Например, для введенных выше типов можно задать такие переменные и типизированные константы: var
CharVal: Alfa; {Переменная}
Operation: Count; {Переменная}
const
Index: Ten = [0, 2, 4, 6, 8]; {Типизированная константа}
Digit: Number = ['0'..'9']; {Типизированная константа}
Примечание. Так же, как и для других структурированных типов, тип-множество можно ввести непосредственно при задании переменных или типизированных констант:
var
CharVal: set of 'A'..'Z';
Operation: set of (Plus, Minus, Mult, Divid);
const
Index: set of 0..9 = [0, 2, 4, 6, 8];
Digit: set of '0’..'9’ = ['0'..'9'];
Множеству можно в программе присвоить то или иное значение. Обычно значение задается с помощью конструктора множества. Конструктор задает множество элементов с помощью перечисления в квадратных скобках выражений, значения которых дают элементы этого множества. Допустимо использовать диапазоны значений.
Пример. Конструкторы множеств
[Plus, Minus]
[1..K mod 12, 15]
[Chr(0)..Chr(31), 'A', 'B']
В каждое множество включается и так называемое пустое множество -[ ], не содержащее никаких элементов.
Конструктор множества можно использовать и непосредственно в операциях над множествами. |