Множества
– структурированный тип данных, представляющих собой набор элементов порядкового типа. Множество
Формат описания множеств type = set of ; var : < имя типа>; или var : set of ;
Тип элементов называется базовым типом множества. Т. к. количество элементов в множестве 256, то в качестве базового типа можно использовать только byte, boolean, char, тип- диапазон и перечислимый типы.
- набор всевозможных подмножеств, составленных из элементов базового типа. Область значений множества
Примеры const m n1 = [ 1..5, 15, 25, 35] ; type a lfavit = set of А.. я ; var mn2 : set of ; mn3 : a lfavit ; mn4 : set of ( red, green, blue ) ; mn5 : set of b yte ; Допустимы операции: mn2 := [ ] ; { пустое множество} mn3 := [ а, б, в ] ; mn5 := m n2 + [3] ;
Операции над множествами
1. Проверка эквивалентности Пример = АВ ВыражениеРезультат [1,2,3][3,2,1]А=ВА=ВTrue [1,2,3][1,2,3,4]А=ВА=ВFalse
2. Проверка неэквивалентности Пример АВ ВыражениеРезультат [1,2,3][3,2,1]АВFalse [1,2,3][1,2,3,4]АВTrue
3. Проверка, является ли левое множество подмножеством правого Пример
4. Проверка, является ли правое множество подмножеством левого Пример >= АВ ВыражениеРезультат [1,2,3][1,2]А>=ВА>=ВTrue [1,2,3][1,2,3,4]А>=ВА>=ВFalse
5. Объединение множеств Пример + АВ ВыражениеРезультат [1,2,3][1,2,4]А+ВА+В [1,2,3,4] [a..s][o..z] А+ВА+В [a..z]
6. Пересечение множеств Пример * АВ ВыражениеРезультат [1,2,3][1,2,4]А*ВА*В [1,2] [a..s][o..z] А*ВА*В [o..s]
7. Разность множеств Пример - АВ ВыражениеРезультат [1,2,3][1,2,4] А-ВА-В [3][3] [a..s][o..z] А-ВА-В [a..n]
8. Проверка на принадлежность данного элемента множеству Пример in АВ ВыражениеРезультат 5[1,2]А in ВFalse s [a..z] А in ВTrue
include (m, x) {Включает в множество m элемент x} exclude (m, x) {Исключает из множества m элемент x} Процедуры работы с множествами x – элемент базового типа множества
В Паскале отсутствуют средства ввода-вывода элементов множества и всего множества как единого целого! !!!