На этом шаге мы перечислим основные операции над множествами.
Операции над множествами выполняются по правилам теории ожеств.
Результатом операции объединения двух множеств А + В будет множество С, включающее как все элементы множества А, так и все элементы множества В.
Результатом операции разности двух множеств А - В будет множество С, состоящее только из тех элементов множества А, которые не входят в множество В.
Результатом операции пересечения двух множеств А * В будет множество С, состоящее только из тех элементов, которые принадлежат как множеству А, так и множеству В.
Если наименьшее порядковое значение, которое является результатом операции над множествами это X, а наибольшее Y, то типом результата будет set of X..Y.
Результатом операции сравнения А = В будет True, а операции А <> В будет False, только тогда, когда А и В содержат одни и те же элементы.
Результатом операции сравнения А <= В будет True, если множество А является подмножеством множества В.
Результатом операции сравнения А >= В будет True, если множество А включает в себя все элементы множества В.
Результатом операции принадлежности X in А будет True, если значение X какого-либо порядкового типа Т является элементом множества А того же типа Т.
Выражение | Результат |
---|---|
[1,2,3,4] + [3,4,5,6] | [1,2,3,4,5,6] |
[1,2,3,4] - [3,4,5,6] | [1,2] |
[1,2,3,4] * [3,4,5,6] | [3,4] |
[1,2,3] = [1,2,3,4] | False |
[1,2,3] <> [1,2,3,4] | True |
[1,2,3] <= [1,2,3,4] | True |
[1,2,3] >= [2,3,4] | False |
4 in [3,4,5,6] | True |
Допустимые типы операндов при выполнении операций над множествами и типы получаемых результатов приведены в следующей таблице:
Операция | Действие | Типы операндов | Тип результата |
---|---|---|---|
+ | Объединение | Совместимые типы множеств | Множество |
- | Разность | ||
* | Пересечение | ||
= | Равенство | Булевский | |
<> | Неравенство | ||
<= | Является надмножеством | ||
>= | Является подмножеством | ||
in | Принадлежность | Левый операнд: любой совместимый тип T. Правый операнд: множество типа T. |
На следующем шаге мы рассмотрим операцию взятия адреса.