Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Domains. Из доменов можно конструировать составные или структурные домены (структуры)




i=integer

Из доменов можно конструировать составные или структурные домены (структуры). Структура описывается следующим образом:

<имя структуры> = <имя функтора>(<имя домена первой компоненты>,..., <имя домена последней компоненты>) [;<имя функтора>(...)]*

Каждая компонента структуры в свою очередь может быть структурой.

 

Пример. Предложить структуру, описывающую треугольник, содержащую в качестве компоненты структуру, описывающую точку на плоскости, имеющую две компоненты (координаты точки).

point = p(integer , integer)

triangle = tr(point , point , point)

В описание структуры могут входить альтернативы, разделенные символом ";" или ключевым словом "or".

Так, структуру, описывающую точку и на плоскости, и в пространстве, можно задать следующим образом:

point = p(integer , integer); p(integer , integer , integer).

Описание файлового домена имеет вид:

 

file = <символическое имя файла 1>;...;<символическое имя файла N>

Для представления данных в Турбо-Прологе, в отличие от стандартных алгоритмических языков программирования, используются не массивы, а списки. Списковый домен задается следующим образом:

<имя спискового домена> = <имя домена элементов списка>*

Пример. Список целых чисел

list_of_integer = integer*

 

Раздел описания предикатов внутренней базы данных

Раздел описания предикатов внутренней базы данных начинается с зарезервированного слова database, и в нем описываются те предикаты, которые можно в процессе выполнения программы добавлять во внутреннюю базу данных или удалять оттуда. Описываются предикаты базы данных аналогично предикатам в разделе predicates.

 

Раздел описания предикатов

В разделе, озаглавленном зарезервированным словом predicates, содержатся описания определяемых пользователем предикатов. В традиционных языках программирования подобными разделами являются разделы описания заголовков процедур и функций. Описание n-местного предиката имеет следующий вид:

<имя предиката>(<имя домена первого аргумента>,...,

<имя домена n-го аргумента>).

Домены(области определения) аргументов должны быть либо стандартными, либо объявленными в разделе описания доменов. Следует обращать внимание на то, что имя предиката в Турбо-Прологе должно быть идентификатором, т.е. оно должно состоять только из латинских букв, цифр и символа подчеркивания, причем имя предиката не может начинаться с цифры.

Пример. Предикат, описывающий отношение "мама" .


Поделиться:

Дата добавления: 2015-02-09; просмотров: 159; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.005 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты