Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лабораторная №5 Вариант №21

.doc
Скачиваний:
5
Добавлен:
20.06.2014
Размер:
95.23 Кб
Скачать

2

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

ЛИПЕЦКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

КАФЕДРА АВТОМАТИЗИРОВАННЫХ СИСТЕМ УПРАВЛЕНИЯ

Лабораторная работа №5

по дисциплине

«Рекурсивно-логическое программирование»

на тему:

«Определение операторов»

Студент

подпись, дата

фамилия, инициалы

Группа

Принял

Гаев Л.В.

ученая степень, звание

подпись, дата

фамилия, инициалы

Липецк 2010

  1. Задание

21) Определить операторы «ravno» и «<-» и реализовать отношение:

L ravno A<-B (),

где А – некоторый элемент,

В – некоторое множество,

L – булева функция, принимающая значение 1, если A принадлежит B, иначе 0.

  1. Листинг программы

:-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.

  1. Контрольный пример

  1. Выводы о проделанной работе

При выполнении данной лабораторной работы я получил навыки программирования в Prolog-системе Arity-Prolog. Научился создавать отношения и использовать рекурсивные правила.

  1. Список использованной литературы

1. Иван Братко. Алгоритмы искусственного интеллекта на языке PROLOG = Prolog Programming For Artificial Intelligence. — М.: «Вильямс», 2004. — 640 с.