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

Domains. my_dom=<base domain> % <base domain>- это стандартный домен

Читайте также:
  1. Domains

my_dom=<base domain> % <base domain>- это стандартный домен

может свободно смешиваться с аргументами из этого основного домена и с аргументами всех совместимых с ним стандартных доменов. Если основной домен - string, то с ним совместимы аргументы из домена symbol; если же основной домен integer, то с ним совместимы домены real, char, word и др.

Такое преобразование типов означает, например, что вы можете:

· вызвать предикат с аргументами типа string, задавая ему аргументы типа symbol, и наоборот;

· передавать предикату с аргументами типа real параметры типа integer;

· передавать предикату с аргументами типа char параметры типа integer;

· использовать в выражениях и сравнениях символы без необходимости получения их кодов в ASCII.

Существует набор правил, определяющих, к какому домену принадлежит результат смешивания разных доменов.

62. Простые объекты данных.

Простой объект данных - это переменная или константа. Не путайте это значение слова "константа" с символьными константами, которые вы определяете в разделе constants программы. То, что мы здесь называем константой, это нечто, идентифицирующее объект, который нельзя изменять: символ (char), число (integer или real) или атом (symbol или string).

Переменные как объекты данных

Названия переменных должны начинаться с заглавной буквы (A-Z) или с символа подчеркивания (_). Символ подчеркивания представляет анонимную переменную, которая используется в ситуации "неважно что". В Прологе переменная может связываться с любым допустимым аргументом Пролога или объектом данных.

Переменные Пролога локальны, а не глобальны. Так, если два предложения содержат переменную, названную X, то это две различные переменные. Они могут быть связаны друг с другом, если совпадут во время унификации, но обычно они не оказывают влияния друг на друга.

Константы как объекты данных

Константы включают символы, числа и атомы. Опять же, не путайте константы в данном контексте с символьными константами, определенными в разделе constants программы. Значение константы - это ее имя. Так константа 2 может соответствовать только числу 2, а константа abracadabra - только идентификатору abracadabra.

Символы

Символы имеют тип char. Печатные символы (ASCII 32-127) - это цифры (0-9), прописные буквы A-Z, строчные буквы a-z, символы пунктуации и специальные символы.

Символ-константа записывается в простых кавычках:

'a' '3'

Числа

Числа могут быть целыми (integer) или вещественными (real). Вещественные имеют значения от 1е-308 до 1е308 (от 10-308 до 10+308).

63. Составные объекты данных и функторы.

Составные объекты данных позволяют интерпретировать некоторые части информации как единое целое таким образом, чтобы затем можно было легко разделить их вновь. Возьмем, например, дату "октябрь 15, 1991". Она состоит из трех частей информации - месяц, день и год. Представим ее на рис. 1, как древовидную структypy.


Рис.1. Древовидная структура даты

Вы можете сделать это, объявив домен, содержащий составной объект date:


Дата добавления: 2015-07-20; просмотров: 105 | Нарушение авторских прав


Читайте в этой же книге: Интенсионал и экстенсионал понятия | Технология разработки экспертных систем, стадии разработки прототипа экспертной системы | Порядок вычислений | Головы и хвосты | Length_of(T,TailLength), | Имена предикатов | Доступ к внутренней базе фактов |
<== предыдущая страница | следующая страница ==>
Alphabet_position(Letter,Position)| Domains

mybiblioteka.su - 2015-2024 год. (0.005 сек.)