Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ПДС ЛР1 Отчет

.docx
Скачиваний:
47
Добавлен:
22.05.2022
Размер:
84.16 Кб
Скачать

МИНОБРНАУКИ РОССИИ

Федеральное государственное бюджетное образовательное учреждение

высшего образования

«Ижевский государственный технический университет имени М. Т. Калашникова»

Институт «Информатика и вычислительная техника»

Кафедра «Автоматизированные системы обработки информации и управления»

ОТЧЁТ

по лабораторной работе № 1

по дисциплине «Программирование дискретных структур»

на тему «Работа с множествами»

Вариант 2

Выполнил

студент гр. Б21-780-4 Д.О. Бондарь

Проверил

старший преподаватель кафедры АСОИУ Ю.В. Шибанова

Ижевск 2022

Текст задания:

Написать программу на языке Python, которая по заданным множествам А, В, С формирует множество, задаваемое формулой. Элементы полученного множества вывести на экран.

Предусмотреть возможность ввода исходных множеств с клавиатуры.

Предусмотреть обработку ошибок: ввод одинаковых элементов множества.

Вариант тестового задания №2 – формула

Аналитическое решение

Первым действием вычисляем множество – операция логической дизъюнкции.

Затем находим разность множества A с полученным в первом действии множеством.

Ответ выводим на экран.

Программирование

Средствами языка программирования Python реализуем ввод данных и их запись в объект типа данных «set», работающим согласно классической теории множеств.

После чего выведем на экран результат преобразований, описанный в аналитическом решении.

Код программы

A = set(input("Введите эл-ты множества А через пробел: "))

B = set(input("Введите эл-ты множества B через пробел: "))

C = set(input("Введите эл-ты множества С через пробел: "))

result = A.difference((B.union(C)))

if result == set():

print("Пустое множество")

else:

print(' '.join(result))

Функция X.union(Y, Z, …) – возвращает объект типа set – множество - результат дизъюнкции множеств X, Y, Z, …

Функция X.difference(Y, Z, …) – возвращает объект типа set – множество – результат разности множества X с множествами Y, Z….

Также выполняется проверка на пустое множество, т.к. при простом вызове print(result) интерпретатор выведет назвние тип данных set() вместо пустого множества.

‘ ‘.join(result) – «аккуратный» вывод значений через пробел.

Пример входных данных №1

A

1 2 3 4 5

B

1 2 5 9

C

1 4 5 9

Аналитическое решение на примере входных данных

Действие 1.

1 2 5 9

1 4 5 9

1 2 4 5 9

Действие 2.

1 2 3 4 5

1 2 4 5 9

3

Ответ: 3

Результат выполнения программы (скриншот)

Пример входных данных №2

A

5 8 2 4 0 1 6

B

2 6 5 9 3 4 1

C

2 5

Аналитическое решение на примере входных данных

Действие 1.

2 6 5 9 3 4 1

2 5

2 6 5 9 3 4 1

Действие 2.

5 8 2 4 0 1 6

2 6 5 9 3 4 1

0 8

Ответ: 0, 8

Результат выполнения программы (скриншот)

Пример входных данных №3

A

1 2 3

B

1 2

C

3

Аналитическое решение на примере входных данных

Действие 1.

1 2

3

1 2 3

Действие 2.

1 2 3

1 2 3

Ответ:

Результат выполнения программы (скриншот)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]