Файл: Методические указания по проведению лабораторных занятий по дисциплине Математическая логика и теория алгоритмов.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 25.04.2024
Просмотров: 6
Скачиваний: 0
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Федеральное государственное бюджетное образовательное учреждение высшего образования
«Саратовский государственный технический университет
имени Гагарина Ю.А.»
Кафедра «Информационно-коммуникационные системы и программная инженерия»
МЕТОДИЧЕСКИЕ УКАЗАНИЯ
по проведению лабораторных занятий
по дисциплине
«Математическая логика и теория алгоритмов»
направления подготовки
09.03.01 Информатика и вычислительная техника
09.03.04 Программная инженерия
Курс 1
семестр 2
Саратов 2021 г.
Лабораторная работа 1
Написать программу «Калькулятор множеств», принимающую на вход конечные множества и бинарные отношения, выполняющую над ними следующие действия (операции):
-
пересечение; -
объединение; -
разность; -
симметрическая разность; -
дополнение (требуется задать универсальное множество); -
обращение б.о.; -
композиция б.о.
Лабораторная работа2
Написать программу, которая факторизует заданное множество по некоторым их и выводит классы эквивалентности.
Варианты множеств:
-
Книги -
Автомобили -
Хоккеисты -
Футболисты -
Картины -
Музыканты -
Фильмы -
Языки программирования -
Артисты -
Города
Лабораторная работа3
Написать программу, строящую таблицу истинности функции и находящую СДНФ и СКНФ.
Варианты:
2.1.1. Перевод в двоичную-шеснадцатеричную систему:
1111 1111 0000 1001
2.1.2 Восстановление таблицы истинности:
Таблица 1 – восстановленная таблица истинности
a | b | c | d | F |
0 | 0 | 0 | 0 | 1 |
0 | 0 | 0 | 1 | 1 |
0 | 0 | 1 | 0 | 1 |
0 | 0 | 1 | 1 | 1 |
0 | 1 | 0 | 0 | 1 |
0 | 1 | 0 | 1 | 1 |
0 | 1 | 1 | 0 | 1 |
0 | 1 | 1 | 1 | 1 |
1 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 1 | 0 |
1 | 0 | 1 | 0 | 0 |
1 | 0 | 1 | 1 | 0 |
1 | 1 | 0 | 0 | 1 |
1 | 1 | 0 | 1 | 0 |
1 | 1 | 1 | 0 | 0 |
1 | 1 | 1 | 1 | 1 |
Ссылаясь на таблицу 1, найдём СДНФ:
СДНФ = ( * *
* )+ (1) +( * * *d)+( * *c* )+( * *c*d)+( *b* * )+( *b* *d)+
+( *b*c* )+( *b*c*d)+(a*b* * )+(a*b*c*d)
2.1.4. СКНФ
Ссылаясь на таблицу 1, найдём СКНФ:
СКНФ = (a+ + + )* (a+ + +d)* (a+ +c + )* (a+ +c +d)* (2) *(a+b+c+ )*(a+b+c+ )
Лабораторная работа4
Программная реализация тестов на простоту по вариантам (Алгоритм Миллера — Рабина, тест Ферма, Перебор делителей)
Лабораторная работа 5.
Написать программу, вычисляющую, для фиксированного n = 0,1,2,...,9
1) Число Белла
2) Числа Стирлинга 2 рода (для k<=n)
Знать, что означают эти числа.