Структурированные типы в Pascal
Структурированные типы в Pascal  Pascal Множества Примеры определения и задания множественных типов: type Caps = set of  'A' .. 'Z';  Colors = set of (RED, GREEN, BLUE);  Numbers = set of byte; var oct : set of 0 .. 5;  type   digitchar = set of  '0' .. '9';  digit = set of 0 .. 9; var    s1, s2, s3 : digitchar;   s4, s5, s6 : digit; begin   …………….   s1 := ['1', '2', '3'];   s2 := ['3', '2', '1'];   s3 := ['2', '3'];   s4 := [0 .. 3, 6];   s5 := [4, 5];   s6 := [3 .. 9]; …………….. end. Тип "множество" задает набор всех возможных подмножеств входящих в него элементов (включая пустое). Если базовый тип, на котором строится множество имеет N элементов, то число подмножеств, входящих в это множество, равно 2N. А переменная типа "множество" содержит одно конкретное подмножество значений множества.  Например: var s : 1 .. 3; - переменная интервального типа, принимает значения: 1, 2 и 3, а множество  var  m : set of 1 .. 3;  может принимать значения:     [ ] [1] [2] [3] [1, 2] [1, 3] [2, 3] [1, 2, 3]  Инициализация переменной-множества:   var index set of 1 .. 9 = [0, 2, 4, 6, 8,];  В Конструкторе в качестве элемента может быть выражение или диапазон:  [R, а mod 15, 14] или [chr(65) .. chr(90)] Pascal И+ПРГ  Структурированные типы в Pascal  Pascal Множества Операции над множествами.  Результат операции – множество  := - Присваивание   + - Объединение – элементы первого множества, дополненные элементами второго  * - Пересечение – элементы, общие для обоих множеств  -  - Разность – элементы первого множества, которые не принадлежат второму Результат операции – логический  = - Тождественность –  true, когда все элементы обоих множества одинаковы 					(множества эквивалентны)   - Нетождественность – true, когда множества неэквивалентны = - Содержит – true, если второе множество включено во первое in - Принадлежность – true, если первый (левый) операнд операции –выражение- 		принадлежит второму (правому) операнду -множеству (включен в него) Процедуры  Include (s, i) - включает элемент i во множество s  Exclude (s, i) - исключает элемент i из множества s  Pascal И+ПРГ