Среда, 16.09.2026, 15:34
Приветствую Вас, Гость
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Функциональное и логическое программирование. Вариант 2
engineerklubДата: Четверг, 27.08.2026, 19:34 | Сообщение # 1
Генералиссимус
Группа: Администраторы
Сообщений: 39921
Репутация: 1
Статус: Offline
Функциональное и логическое программирование. Вариант 2

Задание

Напишите на языке SWI-PROLOG программу для работы с базой данных по заданию. Начальная база данных должна храниться в файле. В программе должно присутствовать меню из 5 пунктов, реализующих следующие возможности:
1. просмотр содержимого динамической базы данных (при запуске программы динамическая база данных должна заполняться из файла базы данных только один раз и только в этом пункте);
2. добавления записи в динамическую базу данных (за один вход в этот пункт должна быть возможность добавления нескольких записей);
3. удаления записи из динамической базы данных (за один вход в этот пункт должна быть возможность удаления нескольких записей);
4. выполнения запроса к динамической базе данных по заданию;
5. выход из программы с сохранением содержимого динамической базы данных в исходный файл базы данных (сохранение должно быть только один раз и только в этом пункте).

Индивидуальное задание:
2. Создайте базу данных об итогах сессии по 4 дисциплинам студентов определенной группы. Сформируйте список студентов на отчисление, имеющих не менее двух двоек.

Текст программы

Результаты работы программы

СКАЧАТЬ
 
engineerklubДата: Четверг, 27.08.2026, 19:35 | Сообщение # 2
Генералиссимус
Группа: Администраторы
Сообщений: 39921
Репутация: 1
Статус: 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. Определите, совпадают ли два текстовых файла. Если нет, то получите номер первой строки и позиции первого символа в этой строке, в котором файлы отличаются между собой.

Текст программы
Результаты работы программы

СКАЧАТЬ
 
  • Страница 1 из 1
  • 1
Поиск:

Рейтинг@Mail.ru