Структурированные типы в 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 И+ПРГ