
Структурный тип Множество.pptx
- Количество слайдов: 10
СТРУКТУРНЫЙ ТИП МНОЖЕСТВО ШАБАЛИНА Т. М. 2014
ОПИСАНИЕ ТИПА МНОЖЕСТВО ИМЕЕТ ФОРМУ: type < имя типа-множества> = set of < базовый тип >;
ДЛЯ ИСПОЛЬЗОВАНИЯ ТИПА МНОЖЕСТВО Как и для других типов, для использования типа Множество необходимо вначале определить переменные этого типа. Например: type primes = set of 1. . 200; {множество простых чисел до 200} var pr 1, pr 2: primes; { переменные типа primes}
ПРИМЕРЫ КОНСТРУКТОРОВ МНОЖЕСТВ: [2] {множество из одного элемента 2} [ 0, 2. . 5] {множество из элементов 0, 2, 3, 4, 5} [1. . 200] {множество всех чисел базового типа 1. . 200}
ОПЕРАЦИИ НАД МНОЖЕСТВАМИ: + операция объединения множеств Например: [2] + [2. . 5] даёт множество [2. . 5]; *операция пересечения множеств Например: [1. . 200] *[0, 2. . 5] даёт множество [2. . 5]; - операция разности множеств Например: [1. . 200] - [0, 2. . 5] даёт множество [1, 6. . 200];
ОТНОШЕНИЯ НАД МНОЖЕСТВАМИ = проверка эквивалентности Например: [1. . 3] =[3, 1, 2] - даёт true. <> проверка неэквивалентности Например: [1. . 3] <> [3, 2, 1] - даёт false. <= проверка включения левого операнда в правый Например: [5] <= [1. . 5] - даёт true, а [0] <=[1. . 5] даёт false. >= проверка включения правого операнда в левый [5] <= [1. . 5] - даёт false
ОТНОШЕНИЕ ПРИНАДЛЕЖНОСТИ ЭЛЕМЕНТА МНОЖЕСТВУ Это отношение имеет структуру: < выражение базового типа> in < множество над этим базовым типом > Например: 3 in [1. . 5] - даёт true, а 0 in [1. . 5] дает false.
ДЛЯ ТАКИХ ВЫРАЖЕНИЙ ДОПУСТИМЫ ОПЕРАТОРЫ ПРИСВАИВАНИЯ ВИДА: < переменная типа-множество> : = < выражение типа-множество>; Например: pr 1: = pr 2; {копирование множества pr 2 в pr 1} pr 1: = []; {присваивание pr 1 пустого множества} pr 1: = [1. . 200]; {присваивание pr 1 множества элементов от 1 до 200}.
ОПЕРАТОР ПРИСВАИВАНИЯ СОВМЕСТНО С ОПЕРАЦИЕЙ ОБЪЕДИНЕНИЯ ИЛИ ВЫЧИТАНИЯ ПОЗВОЛЯЕТ ВКЛЮЧАТЬ ИЛИ ИСКЛЮЧАТЬ ЭЛЕМЕНТЫ ИЗ МНОЖЕСТВА: set 1: =set 1 + [a]; {включение элемента а в множество set 1} set 2: = set 2 - [d]; {исключение элемента d из множества set 2}
ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ МНОЖЕСТВ. program lat_letters; {Определение множества латинских букв в строке} uses CRT; var s: string; {исходная строка} lat: set of 'A'. . 'Z'; {множество лат. букв} k: char; j: byte; begin Text. Background(cyan); Text. Color(white); Clr. Scr; repeat writeln('Введите строку'); readln(s); if s='' then writeln('Ошибка: пустая строка'); until s<>''; lat: =[]; for j: =1 to length(s) do if upcase(s[j]) in ['A'. . 'Z'] then lat: =lat+[upcase(s[j])]; if lat=[] then writeln('В строке нет латинских букв') else begin writeln('Латинские буквы: '); for k: ='A' to 'Z'do if k in lat then write(k, ' ') end; end { lat_letters}. end {sieve}.
Структурный тип Множество.pptx