68998

Організація множин, операції над множинами

Лекция

Информатика, кибернетика и программирование

Множина - це невпорядкований набір різних об’єктів однакового типу. У мові Паскаль використовують тільки скінченні множини, причому всі елементи множини повинні бути однакового типу, визначеного в Паскалі. Тип елементів множини називається базовим.

Украинкский

2014-09-28

34.5 KB

1 чел.

Лекція № 8

Тема: Організація множин, операції над множинами

План заняття:

  1.  Організація множин
  2.  Операції над множинами

Організація множин

Множина - це невпорядкований набір різних об'єктів однакового типу. У мові Паскаль використовують тільки скінченні множини, причому всі елементи множини повинні бути однакового типу, визначеного в Паскалі. Тип елементів множини називається базовим. Як базовий може бути довільний ординальний тип (тобто будь-який простий, за винятком real). Цілого типу застосовують тільки діапазон, для якого зазначають мінімальне і максимальне значення.

Змінні чи сталі множинного типу набувають значення, які є множиною. Для задання множини використовують так званий конструктор множини, який має вигляд списку елементів множини, взятого в квадратні дужки. Елементами множини можуть бути сталі базового типу або вирази цього ж типу. Множина може не мати елементів, тоді вона є порожньою і її описує конструкція [].

Приклади задання множин: [4, 6, 9,12] - множина, елементами якої є цілі числа; ['i', 'm', 'p', 'q', 'r'] - множина, елементами якої є символи; [m, 10] - множина, що містить значення змінної цілого типу т і цілого числа 10.

Якщо елементи множини утворюють діапазон значень базового типу, то їх можна задавати скорочено, як і елементи діапазонного типу. Наприклад, множину [3, 4, 5, 6, 7] можна записати [3..7]. Частину елементів можна перелічувати, а частину - задавати як діапазон: [3, 4, 5..100].

[n..2*n] — множина цілих чисел від п до виразу 2п.

[пн, вт, чт] - множина елементів деякого перелічуваного типу, який потрібно описати.

Якщо в діапазоні А..С, яким задана множина, А=С, то ця множина містить один елемент, що дорівнює А. Якщо С<А, то множина порожня. Наприклад: [3..1], ['r'..'b'] - порожні множини.

Якщо якийсь елемент повторюється, то вважають, що є тільки один такий елемент. Наприклад: [2, 3, 7, 2, 3] те ж саме, що [2, 3, 7].

З наведених прикладів зрозуміло, що для задання множинного типу треба задати деякий базовий тип. Відповідний множинний тип (змінна) може набувати значень, що є множинами, одержаними довільними комбінаціями базового типу.

Загальний вигляд опису множинного типу такий:

type

<ім'я_типу>=set  of  <ординальний_тип>;

Опишемо тип

type

р=1..3;

b=set  of  p;

var

x:b;

Тоді х може набувати значень, якими є всі множини, що можуть бути складені з цілих чисел 1, 2 і 3. Змінна х може мати такі значення: [ ] - порожня множина, [1], [2], [3], [1,2], [1,3], [2,3] і [1,2,3]. Усі ці множини можуть бути значеннями змінної х множинного типу, заданого як set of p. Інші приклади:

type

day=(pn, vt, sr, ct, pt, sb, nd);

den=set of day;

var

roboch: den;

sezon: set of (lito, osin, zyma, vesna);

logic: set of boolean;

У цьому прикладі тип den описаний явно, як множинний, що має базовим перелічуваний тип day. Решта типів задано неявно в описі змінних sezon і logic. Змінна roboch може набувати значень [], [pn], [vt],..., [pn, vt], [pn, sr],..., [sb, nd], [pn, vt, sr],..., [pn, vt, sr, ct, pt, sb, nd].

Змінна sezon: [ ], [lito],..., [lito, osin, zyma, vesna].

Змінна logic: [ ], [true], [false], [true, false].

Для присвоєння значень змінним множинного типу використовують оператор присвоєння

v:=s,

де v - змінна множинного типу; s - вираз цього типу. Елементи s належать до того ж базового типу. Як вираз s може бути змінна множинного типу або саме значення - стала множинного типу. Наприклад, для описаних вище змінних правильними є оператори присвоєння

roboch:=[vt, ct, pt]; logic:=[true];

Тут як вирази використані сталі.

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

Операції над множинами в мові Паскаль практично збігаються з операціями в теорії множин. Це передусім операції об'єднання, перерізу і різниці множин. Нехай А і В - вирази однакового множинного типу, тобто це множини, елементи яких належать до одного і того ж базового типу. Тоді:

об'єднанням А +В множин А і В є множина, елементи якої належать хоча б до однієї множини А чи В. Наприклад, А = [1, 3, 6, 7], а В - [2, 4, 6, 7], то А+В дорівнює [1, 2, 3, 4, 6, 7];

перерізом А *В множин А і В є множина, елементи якої одночасно належать до множини А і множини В. Для тих же А і В переріз А *В  буде [6, 7];

різницею А-В множин А і В є множина, що складається з елементів множини А, які не належать до множини В. Якщо як множини А і В взяти використані раніше, то А-В дає множину [1,3].

За допомогою операцій з множинами можна будувати вирази множинного типу. Пріоритетність виконання операцій така сама, як і під час обчислення арифметичних виразів: у дужках, '*', '+'  і '-'.


 

А также другие работы, которые могут Вас заинтересовать

73826. Операции над матрицами 1.17 MB
  Элементами матрицы могут являться числа алгебраические символы или математические функции. Например матрицы используется для решения систем алгебраических и дифференциальных уравнений нахождения значений физических величин в квантовой теории шифрования сообщений в Интернете. Строки матрицы нумеруются сверху вниз а столбцы слева направо.
73827. Системы уравнений в линейной алгебре 467.5 KB
  Если это определение озвучить в терминах определителей то оно будет выглядеть примерно так: Матрица размера m×n имеет ранг r если существует хотя бы один отличный от нуля определитель rго порядка тогда как определитель любой подматрицы более высокого порядка равен нулю. Для вычисления ранга матрицы можно использовать метод элементарных преобразований строк и столбцов в точности тот самый метод который применяется для вычисления определителей. Целью элементарных преобразований является приведение матрицы к...
73828. Модель затраты- выпуск (модель В. Леонтьева) 121 KB
  Либо не весь объём производства расходуется на потребление и его достаточно для расширения производства тех видов продукции на которые имеется растущий спрос либо объём производства недостаточен для воспроизводства трудового ресурса на постоянном уровне. Свойство наличия баланса состоит как раз в том что полные объёмы всей продукции складываются только из объёмов её конечного потребления и объёмов потребления продукции в производственных процессах межотраслевых потоков. Примером такой взаимосвязи может служить например потребление с х...
73829. Комплексные числа 388 KB
  Определение комплексного числа. Первая компонента комплексного числа действительное число называется действительной частью числа это обозначается так; вторая компонента действительное число называется мнимой частью числа. Два комплексных числа и равны тогда и только тогда когда равны их действительные и мнимые части.
73830. Многочлены -ой степени 536.5 KB
  Многочленом ой степени называется функция где постоянные комплексные числа коэффициенты многочлена комплексная переменная. Число в котором многочлен принимает нулевое значение называется корнем многочлена. Представим в виде многочлена по степеням. Очевидно отсюда следует утверждение: для того чтобы число было корнем многочлена необходимо и достаточно чтобы коэффициент при нулевой степени в разложении по степеням был равен нулю: .
73831. Линейные пространства 451.5 KB
  Обозначим множества векторов направленных отрезков на прямой на плоскости в пространстве соответственно с обычными операциями сложения векторов и умножения векторов на число. Вместо свободных векторов можно рассмотреть соответствующие множества радиус-векторов. Например множество векторов на плоскости имеющих общее начало т. Множество радиус-векторов единичной длины не образует линейное пространство так как для любого из этих векторов сумма не принадлежит рассматриваемому множеству.
73832. Проектирование операционных технологических процессов обработки заготовок 67.5 KB
  обработки позволяет правильно выбрать станок из имеющегося парка или по каталогу. По типу обработки устанавливают группу станков: токарный сверлильный В соответствии с назначением станка его компоновкой степенью автоматизации определяют тип станка: токарный одношпиндельный многошпиндельный револьверный полуавтомат и т. Если эти требования выполнимы на различных станках то при выборе учитывают следующие факторы: 1 соответствие основных размеров станка габаритным размерам обрабатываемой заготовки или нескольких одновременно...