Практическая работа №6
Тема: Операции над множествами
Цель: закрепить навыки по созданию и обработке множеств, использованию их для решения задач.
Вид работы: фронтальная.
Время выполнения: 2 часа.
Теоретический материал:
В Паскале под множеством понимают ограниченный, неупорядоченный набор различных элементов одинакового типа. Множество не может содержать одинаковых элементов. Всему множеству в целом дается имя, которое образуется также, как и имена простых переменных и массивов. Для обозначения множества используются квадратные скобки, в которые заключаются элементы множества: [1,2,3], [‘a’,‘b’,‘c’]. Запись [] обозначает пустое множество. Пустое множество единственное, и принадлежит множествам всех типов.
Как и массивы, и записи, множества могут быть описаны несколькими способами, вот два из них:
1) type имя_типа = set of базовый тип;
var имя_множества:имя_типа;
2) var имя множества: set of базовый тип;
Здесь базовый тип – тип элементов, входящих во множество.
В Турбо-Паскале максимальная мощность множества равна 256.
Задания:
1) Опишите через раздел описания констант два множества, состоящие из следующих элементов: A=[1, 3, 5, 6, 7] и B=[3, 1, 5, 8, 9]. Выведите на экран пересечение и объединение этих множеств.
2) Подсчитайте количество различных букв в предложении с использованием множества, состоящего из символов.
3) Заполните некоторое множество случайными числами и определите, присутствует ли в этом множестве число x, введённое с клавиатуры.
Ход работы:
Для каждой задачи в тетрадь оформите блок-схему и листинг программы
1. Поскольку оба множества состоят из чисел, то один из способов их описания через раздел констант выглядит так:
const a: set of byte = [1, 3, 5, 6, 7]; {для B аналогично}
Операция пересечения обозначается знаком ‘*’, а операция объединения – ‘+’. Согласно правилам работы со множеством, непосредственный вывод элементов на экран не возможен, поэтому используется дополнительный цикл. В цикле осуществляется проверка принадлежности параметра цикла некоторому множеству и вывод его на экран.
2. Сначала все буквы строки записываются во множество (операция include), т.к во множестве не может быть одинаковых элементов, то мощность множества будет являться количеством различных букв в строке. Мощность полученного множества определяется через проверку в цикле принадлежности (операция in) букв латинского алфавита множеству.
3. Прежде всего, определите количество элементов во множестве, например, n, введите с клавиатуры неизвестное число x. Заполните множество случайными числами через цикл с помощью операции include(random(50), y), где y – множество. В этом же цикле проверяется условие принадлежности числа x множеству y: если x принадлежит y, то выводится сообщение ‘да’, иначе - ‘нет’.
Контрольные вопросы и задания:
1) Дайте определение понятию множество.
2) Что подразумевается под мощностью множества? Какова максимальная мощность множества в Pascal?
3) В чём заключаются отличия множеств от массивов?
4) Приведите примеры описания множеств через разделы описания переменных, констант и типов.
5) Как выводятся на экран элементы множества?
Охарактеризуйте операции над множествами.
Скачано с www.znanio.ru
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.