Регистрация
Среда программирования: SWI-Prolog
Название работы: Функциональное и логическое программирование. Контрольная работа №2 - Вариант 9. Лабораторная работа №2 - Вариант 4.
Вид работы: Контрольная работа
Описание: Функциональное и логическое программирование
Контрольная работа №2 - Вариант 9.
«Разработка программы для написания
простых предикатов с использованием языка Пролог»
Задание состоит из решения двух задач, в которых требуется составить программы на Прологе для написания простых предикатов. При составлении программ (если не оговорено противное) можно использовать все встроенные предикаты Пролога. Тексты всех программ получаются небольшие.
Задача 1
Условие
Постройте предикат position_max(+L, -M, -N), который в списке L
находит максимальное значение M и порядковый номер N этого значения.
Задача 2
Условие
Определите умножение целых чисел через сложение и вычитание.
Вариант 9
1. Напишите предикат p(+V, -L), истинный тогда и только тогда, когда
список L получается из списка V после удаления всех повторяющихся элементов, т. е. из списка получается множество.
2. Напишите предикат exists(+P, +L), который проверяет, существует
ли элемент списка L, удовлетворяющий предикату P.
Лабораторная работа №2 - Вариант 4.
Цель работы: освоить построение простых и более сложных программ с помощью языка Пролог.
Задание
Лабораторная работа включает выполнение заданий из двух блоков:
I. Решение двух задач, в которых требуется написать простые программы на Прологе. При составлении программ (если не оговорено противное) можно использовать все встроенные предикаты Пролога.
II. Решение двух задач, в которых требуется написать более сложные
программы на Прологе (как правило, требуется определить несколько предикатов). При составлении программы (если не оговорено противное)
можно использовать все встроенные предикаты Пролога.
Вариант 4
1. Запрограммируйте предикат p(+A,+B), распознающий, можно ли
получить список элементов A из списка элементов B посредством вычеркивания некоторых элементов.
Алгоритм: Если A – пустой список, то ответом будет «да». В противном случае нужно посмотреть, не пуст ли список B. Если это так, то ответом
будет «нет». Иначе нужно сравнить первый элемент списка A с первым элементом списка B. Если они совпадают, то надо снова применить тот же алгоритм к остатку списка A и остатку списка B. В противном случае нужно
снова применить тот же алгоритм к исходному списку A и остатку списка B.
2. Напишите предикат p(+X, +Y, +L), истинный тогда и только тогда,
когда X и Y являются соседними элементами списка L.
Год: 2021
Данный заказ (контрольная работа) выполнялся нашим сайтом в 2021-м году, в рамках этого заказа была разработана программа в среде программирования SWI-Prolog. Если у Вас похожее задание на программу, которую нужно написать на SWI-Prolog, либо на другом языке программирования, пожалуйста заполните форму, приведённую ниже, после чего Ваше задание в первую очередь рассмотрит наш программист, выполнявший в 2021-м году этот заказ, если он откажется, то Ваше задание оценят другие наши программисты в течение 48-и часов, если оценка нужна срочно, просим Вас оставить пометку об этом - напишите в тексте задания фразу "СРОЧНЫЙ ЗАКАЗ".
Тел.: ![]() Viber: ![]() Telegram: ![]() ВКонтакте: ![]() ![]() E-mail: ![]() Skype: ![]() |