Лабораторная №5 Вариант №21
.doc
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
ЛИПЕЦКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
КАФЕДРА АВТОМАТИЗИРОВАННЫХ СИСТЕМ УПРАВЛЕНИЯ
Лабораторная работа №5
по дисциплине
«Рекурсивно-логическое программирование»
на тему:
«Определение операторов»
|
Студент |
|
|
|
|
|
||||||||
|
|
|
подпись, дата |
|
фамилия, инициалы |
|
||||||||
|
Группа |
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
||||||||
|
Принял |
|
|
|
|
|
||||||||
|
|
|
|
|
Гаев Л.В. |
|
||||||||
|
ученая степень, звание |
|
подпись, дата |
|
фамилия, инициалы |
|
Липецк 2010
-
Задание
21) Определить операторы «ravno» и «<-» и реализовать отношение:
L ravno A<-B (),
где А – некоторый элемент,
В – некоторое множество,
L – булева функция, принимающая значение 1, если A принадлежит B, иначе 0.
-
Листинг программы
:-op(100,xfx,ravno).
:-op(200,xfx,<-).
L ravno A <- []:- L is 0.
L ravno A <- [A|T]:- L is 1,!.
L ravno A <- [H|T]:- L ravno A <- T.
L принимает значение 1 если какой либо элемент в списке совпадает с A, если совпадений не найдено, L = 0.
-
Контрольный пример
-
Выводы о проделанной работе
При выполнении данной лабораторной работы я получил навыки программирования в Prolog-системе Arity-Prolog. Научился создавать отношения и использовать рекурсивные правила.
-
Список использованной литературы