Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Приклад 8.7






Наведемо приклади оголошення констант і змінних множинного типу, означуючи самі типи явно, в розділі type, або неявно, в розділі var:

type
Digits = set of 0..9; {тип множини цифр }
Letters = set of 'A'..'Z'; {тип множини латиниці}
Day = (Sun, Mon. Tue, Wed, Thu, Fri. Sat); {тип множини днів }
WorkDay = Mon..Fri; {тип діапазону }
const
EvenDigits: Digits = [0, 2, 4, 6. 8];
Vowels: Letters = ['A'. 'E\ 'Г. '0'. 'U'. 'Y']:
HexDigits: set of 'O'./z' = ['0'.. '9', 'A'.. 'F', 'a'.. 'f ];
var
symbol: set of char; {множина символів }
week: set of Day: {множина днів від Sun до Sat }
WorkWeek: set of WorkDay: {множина днів від Mon до Fri }
number: set of byte; {множина цілих однобайтових чисел}
intset: set of 0..100: {множина чисел від 0 до 100 }

8.2.3. Операції над множинами

Таблиця 8.1. Операції над множинами

Запис на мові Pascal Семантика
A = B Множини А і В збігаються
A < > B Множини А і В не збігаються
A > = B Множина В є підмножиною множини А
A < = B Множина А є підмножиною множини В
x in A Значення х належить множині А
A + B Об'єднання множин А і В
A * B Перетин множин А і В
A - B Різниця множин А і В

Операнди наведених у табл. 8.1 операцій мають задовольняти певні обмеження. А саме, операнд х оператора х іn А має належати базовому типу множини А, а операнди решти операцій мають бути множинами з однаковим базовим типом.

Важливі окремі випадки операцій об'єднання та різниці множин реалізовано у вигляді бібліотечних процедур Include та Exclude, що здійснюють включення елемента до множини та вилучення його із множини відповідно. Наведемо прототипи цих процедур.

Include(var S; i);
Exclude(var S; i);

Тут S — це змінна множинного типу; і — елемент, який включають до множини S або видаляють з неї. Тип і повинен бути базовим типом множини S.

Завершуючи розгляд операцій над множинами, зазначимо, що, як і змінним усіх інших типів мови Pascal, змінній деякого множинного типу можна присвоювати значення виразів того самого типу. Слід зауважити, що одноелементна множина може бути утворена і шляхом запису імені цієї змінної базового типу у квадратних дужках. Тому коректним є таке присвоєння:

< ім'я змінної типу множини>: =[< ім'я змінної базового типу> ];

Подальші модифікації значень змінної базового типу, використаної у такому присвоєнні, не призведуть до модифікації значень відповідної множинної змінної. Наприклад, після присвоєнь х: =1: А: =[х]; х: =2; значення єдиного елемента множини А дорівнюватиме одиниці.

УВАГА

Змінні множинного типу не можна використовувати як аргументи процедур введення read або readln і процедур виведення write або writeln. Вводити та виводити множини можна лише поелементно.

У прикладі 8.8 реалізовано операції введення та виведення множини. Значення, що були введені до змінної сh базового типу, додаються до множини symbol операцією об'єднання (+). Під час виведення множини symbol переглядаються всі елементи її базового типу, які можуть бути введені користувачем. Кожен із них перевіряється на належність множині.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.