| engineerklub | Дата: Четверг, 27.08.2026, 19:34 | Сообщение # 1 |
 Генералиссимус
Группа: Администраторы
Сообщений: 39921
Статус: Offline
| Функциональное и логическое программирование. Вариант 2
Задание
Напишите на языке SWI-PROLOG программу для работы с базой данных по заданию. Начальная база данных должна храниться в файле. В программе должно присутствовать меню из 5 пунктов, реализующих следующие возможности: 1. просмотр содержимого динамической базы данных (при запуске программы динамическая база данных должна заполняться из файла базы данных только один раз и только в этом пункте); 2. добавления записи в динамическую базу данных (за один вход в этот пункт должна быть возможность добавления нескольких записей); 3. удаления записи из динамической базы данных (за один вход в этот пункт должна быть возможность удаления нескольких записей); 4. выполнения запроса к динамической базе данных по заданию; 5. выход из программы с сохранением содержимого динамической базы данных в исходный файл базы данных (сохранение должно быть только один раз и только в этом пункте).
Индивидуальное задание: 2. Создайте базу данных об итогах сессии по 4 дисциплинам студентов определенной группы. Сформируйте список студентов на отчисление, имеющих не менее двух двоек.
Текст программы
Результаты работы программы
СКАЧАТЬ
|
| |
|
|
| engineerklub | Дата: Четверг, 27.08.2026, 19:35 | Сообщение # 2 |
 Генералиссимус
Группа: Администраторы
Сообщений: 39921
Статус: Offline
| Лабораторная работа №1
Задание Напишите на языке CLISP программу для работы со списками по заданию. Обязательно использование рекурсии. Ввод всех входных данных должен запрашиваться с клавиатуры в процессе работы программы (функции). Не допускается использование: функционалов, а в теле рекурсивной функции - операторов SET и SETQ.
2. Преобразуйте одноуровневый список L во вложенный по следующему правилу. Например, при L=(a s d f g) функция должна вернуть (((((a) s) d) f) g).
Текст программы Результаты выполнения программы
Лабораторная работа №2
Задание Напишите на двух языках CLISP и SWI-PROLOG программы для работы со списками по заданию. Обязательно использование рекурсии. Ввод всех входных данных должен запрашиваться с клавиатуры в процессе работы программы (функции или предиката). В программе на языке CLISP не допускается использование: функционалов, а в теле рекурсивной функции - операторов SET и SETQ. В программе на SWI-PROLOG предикат после вывода результатов работы должен успешно завершиться (на экране появится true. и приглашение следующего ввода цели ?-).
2. Сформируйте список без повторений из тех элементов исходного списка L, которые встречаются больше одного раза. Например, для языка CLISP при L=(5 1 2 1 3 5 5 7) функция должна вернуть (5 1).
Текст программы на языке CLISP Текст программы на языке SWI-PROLOG Результаты выполнения программы на языке CLISP Результаты выполнения программы на языке SWI-PROLOG
Лабораторная работа №3
Задание Напишите на языке SWI-PROLOG программу для работы с текстовым файлом, состоящим из нескольких строк. При преобразовании файла должны быть сохранены переводы строк исходного файла.
2. Определите, совпадают ли два текстовых файла. Если нет, то получите номер первой строки и позиции первого символа в этой строке, в котором файлы отличаются между собой.
Текст программы Результаты работы программы
СКАЧАТЬ
|
| |
|
|