Эксперт
Сергей
Сергей
Задать вопрос
Мы готовы помочь Вам.

Цель работы: Ознакомится с представлением данных в виде множеств. Изучить основные алгоритмы работы со множествами..
Краткие теоретические сведения
Множество – это составной объект, который содержит компоненты одного и того же класса. Над множеством, в отличие от массива, определены совсем другие операции. Во множестве порядок элементов несуществен. Основная операция – проверка принадлежности элемента множеству. Другие операции – объединение, пересечение, добавление элемента, мощность множества. Эффективная реализация множества обычно подразумевает такое его представление, при котором элементы множества не хранятся, вместо этого хранится информация о том, содержится ли элемент во множестве. Это возможно, когда элементы множества достаточно просты, а максимальное число элементов множества не велико. Тогда можно присутствие каждого из возможных элементов множества кодировать одним битом. Например, 1 – элемент принадлежит множеству, 0 – не принадлежит. Наиболее часто используется множество целых чисел из некоторого диапазона и множество символов из некоторого набора символов. Для представления множества можно сформировать битовую шкалу, каждый элемент которой определяет, содержится ли во множестве некоторый элемент. Такая битовая шкала будет содержать столько битов, сколько элементов содержится в универсальном множестве для данного проекта или задачи.

screenshot 32 12

screenshot 33 12

screenshot 34 12

screenshot 35 12

Порядок выполнения работы
1. Ознакомиться с теоретическими сведениями.
2. Получить вариант задания у преподавателя.
3. Выполнить задание: написать программу на языке С++.
4. Продемонстрировать выполнение работы преподавателю.
5. Оформить отчет.
6. Защитить лабораторную работу.
Требования к оформлению отчета
Отчет по лабораторной работе должен содержать следующие разделы:
титульный лист;
цель работы;
задание на лабораторную работу;
ответы на контрольные вопросы;
выводы по проделанной работе.

Варианты заданий
Реализуйте класс множество. Реализуйте все необходимые методы для варианта задания.
1. Известны сорта роз, выращиваемых тремя цветоводами: «Анжелика», «Виктория», «Гагарин», «Ave Maria», «Катарина», «Юбилейная». Определить те сорта, которые имеются у каждого из цветоводов, которые есть хотя бы у одного из цветоводов, которых нет ни у одного из цветоводов.
2. Заданы имена девочек. Определить, какие из этих имен встречаются во всех классах данной параллели, которые есть только в некоторых классах и какие из этих имен не встречаются ни в одном классе.
3. Имеется список класса (все имена различны). Определить, есть ли в классе человек, который побывал в гостях у всех. (Для каждого ученика составить множество побывавших у него в гостях друзей, сам ученик в это множество не входит.)
4. Имеется множество, содержащее натуральные числа из некоторого диапазона. Сформировать два множества, первое из которых содержит все простые числа из данного множества, а второе — все составные.
5. Известны марки машин, изготовленные в данной стране и импортируемые за рубеж. Даны некоторые N стран. Определить для каждой из марок, какие из них были:
• доставлены во все страны;
• доставлены в некоторые из стран;
• не доставлены ни в одну страну.
6. В озере водится несколько видов рыб. Три рыбака поймали рыб, представляющих некоторые из имеющихся видов. Определить:
• какие виды рыб есть у каждого рыбака;
• какие рыбы есть в озере, но нет ни у одного из рыбаков.
7. Составить программу, которая вычисляет сумму тех элементов двумерного массива, номера строк и столбцов которых приyадлежат соответственно непустым множествам S1 и S2.
8. Задано некоторое множество М и множество T того же типа. Подсчитать, сколько элементов из множеств Т и М совпадает.
9. Из диапазона целых чисел m … п выделить:
 множество чисел, делящихся без остатка или на к;
 множество чисел, делящихся на к-1 без остатка.
10. Дан текст из цифр и строчных латинских букв, за которыми следует точка. Определить, каких букв — гласных или согласных — больше в этом тексте.

Контрольные вопросы
1. Что такое множество?
2. Какие есть способы задания множества?
3. Какие основные операции над множествами Вы знаете? Приведите пример реализации одной из них.

Была ли полезна данная статья?
Да
60.93%
Нет
39.07%
Проголосовало: 1098

или напишите нам прямо сейчас:

⚠️ Пожалуйста, пишите в MAX или заполните форму выше.
В России Telegram и WhatsApp блокируют - сообщения могут не дойти.
Написать в MAXНаписать в TelegramНаписать в WhatsApp