Навигация
|
|||||
Оглавление
|
|||||
Операции над множествами
При работе с множествами допускается использование операций отношения (=, <>, >=, <=), объединения, пересечения, разности множеств и операции in. Операции сравнения (=, <>). Два множества считаются равными, если они состоят из одних и тех же элементов. Порядок следования элементов в сравниваемых множествах значения не имеет. Два множества A и B считаются не равными, если они отличаются по мощности или по значению хотя бы одного элемента. Выражение Результат Операции принадлежности (>=, <=). Выражение A >= B равно True, если все элементы множества B содержатся в множестве A. Выражение A <= B равно True, если выполняется обратное условие, т.е. все элементы множества A содержатся в множестве B. Выражение Результат Операция in. Используется для проверки принадлежности элемента указанному множеству. Обычно применяется в условных операторах. Выражение Результат Операция in позволяет эффективно и наглядно выполнять сложные проверки условий, заменяя иногда десятки других операций. Например, оператор if (X = 1) or (X = 2) or (X = 3) or (X = 5) or (X = 7) then можно заменить более коротким: Операцию in иногда пытаются записать с отрицанием: X not in S. Такая запись является ошибочной, так как две операции следуют подряд. Правильная запись имеет вид: not (X in S). Объединение множеств (+). Объединением двух множеств является третье множество, содержащее элементы обоих множеств. Выражение Результат Пересечение множеств (*). Пересечение двух множеств - это третье множество, которое содержит элементы, входящие одновременно в оба множества. Выражение Результат Разность множеств (-). Разностью двух множеств является третье множество, которое содержит элементы первого множества, не входящие во второе множество. Выражение Результат В язык Delphi введены две стандартные процедуры Include и Exclude, которые предназначены для работы с множествами. Процедура Include(S, I) включает в множество S элемент I. Она дублирует операцию + (плюс) с той лишь разницей, что при каждом обращении включает только один элемент и делает это более эффективно. Процедура Exclude(S, I) исключает из множества S элемент I. Она дублирует операцию - (минус) с той лишь разницей, что при каждом обращении исключает только один элемент и делает это более эффективно. Выражение Результат Использование в программе множеств дает ряд преимуществ: значительно упрощаются сложные операторы if, улучшается наглядность программы и понимание алгоритма решения задачи, экономится время разработки программы. Поэтому множества широко используются в библиотеке компонентов среды Delphi. |