ВУЗ:
Составители:
Рубрика:
4) = - проверка эквивалентности (или равенства): возвращает TRUE, если оба
множества эквивалентны, т.е. содержат все одинаковые элементы.
5) <> - проверка неэквивалентности (или неравенства): возвращает TRUE,
если оба множества неэквивалентны, т.е. содержат неодинаковые
элементы.
6) <= - проверка вхождения: возвращает TRUE, если первое множество
включено во второе (т.е. все элементы первого множества присутствуют
также и во втором).
7) >= - проверка вхождения: возвращает TRUE, если второе множество
включено в первое.
8) IN - проверка принадлежности элемента множеству. Эта операция
возвращает результат TRUE, если элемент (или выражение), стоящий
слева принадлежит множеству, указанному справа.
Дополнительно к этим операциям можно использовать две процедуры:
Include - включает новый элемент во множество: Include(M,elem);
где
М - множество элементов некоторого базового типа, а elem - элемент
того же типа, который необходимо включить в множество М.
Exclude - исключает элемент из множества: Exclude(M,elem).
В отличие от операций "+" и "-", реализующих аналогичные действия над
двумя множествами, эти процедуры оптимизированы для работы с
одиночными элементами множества и поэтому отличаются высокой
скоростью выполнения.
Основным достоинством использования
множеств является экономия
памяти: внутреннее устройство множества таково, что каждому его элементу
ставится в соответствие один двоичный разряд (один бит). Если элемент
включен во множество, то соотвествующий разряд имеет значение 1, в
противном случае - 0. Минимальной единицей памяти является 1 байт (8 бит),
поэтому для хранения множества мощностью 256 элементов выделяется
память 32 смежных байта.
Рассмотрим работу
с множествами на следующем примере.
Из множества целых чисел от 1 до 20 выделить:
1) множество чисел, делящихся на 2 и 3 одновременно;
2) множество чисел, делящихся на 2 или на 3.
Первая задача соответствует нахождению пересечения множеств чисел,
одно из которых содержит числа, делящиеся на 2, а другое на 3. Вторая -
объединению этих двух множеств.
Обозначим множество
чисел, делящихся на 2 через М2; множество чисел,
делящихся на 3 через М3; множество чисел, делящихся на 2 и 3 через М2and3;
множество чисел, делящихся на 2 или 3 через М2or3.
Текст программы
Type TM=Set of 1..20; {Описание типа множества целых чисел от 1 до 20}
Var M2,M3,M2and3,M2or3:TM; {Описание множеств}
k:1..20; {Описание переменной}
4) = - проверка эквивалентности (или равенства): возвращает TRUE, если оба множества эквивалентны, т.е. содержат все одинаковые элементы. 5) <> - проверка неэквивалентности (или неравенства): возвращает TRUE, если оба множества неэквивалентны, т.е. содержат неодинаковые элементы. 6) <= - проверка вхождения: возвращает TRUE, если первое множество включено во второе (т.е. все элементы первого множества присутствуют также и во втором). 7) >= - проверка вхождения: возвращает TRUE, если второе множество включено в первое. 8) IN - проверка принадлежности элемента множеству. Эта операция возвращает результат TRUE, если элемент (или выражение), стоящий слева принадлежит множеству, указанному справа. Дополнительно к этим операциям можно использовать две процедуры: Include - включает новый элемент во множество: Include(M,elem); где М - множество элементов некоторого базового типа, а elem - элемент того же типа, который необходимо включить в множество М. Exclude - исключает элемент из множества: Exclude(M,elem). В отличие от операций "+" и "-", реализующих аналогичные действия над двумя множествами, эти процедуры оптимизированы для работы с одиночными элементами множества и поэтому отличаются высокой скоростью выполнения. Основным достоинством использования множеств является экономия памяти: внутреннее устройство множества таково, что каждому его элементу ставится в соответствие один двоичный разряд (один бит). Если элемент включен во множество, то соотвествующий разряд имеет значение 1, в противном случае - 0. Минимальной единицей памяти является 1 байт (8 бит), поэтому для хранения множества мощностью 256 элементов выделяется память 32 смежных байта. Рассмотрим работу с множествами на следующем примере. Из множества целых чисел от 1 до 20 выделить: 1) множество чисел, делящихся на 2 и 3 одновременно; 2) множество чисел, делящихся на 2 или на 3. Первая задача соответствует нахождению пересечения множеств чисел, одно из которых содержит числа, делящиеся на 2, а другое на 3. Вторая - объединению этих двух множеств. Обозначим множество чисел, делящихся на 2 через М2; множество чисел, делящихся на 3 через М3; множество чисел, делящихся на 2 и 3 через М2and3; множество чисел, делящихся на 2 или 3 через М2or3. Текст программы Type TM=Set of 1..20; {Описание типа множества целых чисел от 1 до 20} Var M2,M3,M2and3,M2or3:TM; {Описание множеств} k:1..20; {Описание переменной}
Страницы
- « первая
- ‹ предыдущая
- …
- 50
- 51
- 52
- 53
- 54
- …
- следующая ›
- последняя »