В какой секции программы указывается вопрос на который должен ответить пролог

В Prolog программе можно задавать вопросы и получать вычисленные ответы (решения). Вопросы суть цели (целевые утверждения), которые интерпретатор пытается доказать (достигнуть). Простые вопросы записываются по тем же синтаксическим правилам, что и факты–предложения. Prolog позволяет проверять наличие фактов с конкретными значениями. Для этого необходимо использовать факт так, как он написан в программе. Предположим, что в нашей программе есть следующие факты:

pet(‘Мурзик’). male(‘Дмитрий’). father(‘Дмитрий’, ‘Анатолий’). father(‘Дмитрий’, ‘Настя’). male(‘Анатолий’). female(‘Настя’).

Напишем предикат, который проверяет наличие факта pet :

Вы узнаете больше о предикатах в следующих уроках

check_fact :– pet(‘Мурзик’).

Чтобы вызвать предикат напишите check_fact. :

?– check_fact. true.

Программа вывела true , следовательно факт с такими данными существует.

В вопросах в качестве аргументов могут фигурировать не только конкретные значения, но и переменные, которые записываются с заглавной буквы и обозначают не конкретный, а произвольный объект. В приведенных ниже примерах вопросов переменная X обозначает отца:

Викторина! Спрашиваю у студентов школьные вопросы)


check_fact(X) :– father(X, ‘Анатолий’). % Кто отец Анатолия?

Чтобы вызвать предикат напишите check_fact(X). :

?– check_fact(X). X = ‘Дмитрий’.

Prolog программа нашла решение (ответ на наш вопрос): отец Анатолия – Дмитрий, что соответствует факту, с конкретными значениями, описанному в программе.

В какой секции программы указывается вопрос на который должен ответить пролог

« Предыдущий вопрос

Программа на Турбо Прологе состоит из следующих семи разделов: директивы компилятора;CONSTANTS — раз

например +79131234567

jar—> txt fb2 ePub html

на телефон придет ссылка на файл выбранного формата

Читайте также:
Как записываются в программе условный оператор

Шпаргалки на телефон — незаменимая вещь при сдаче экзаменов, подготовке к контрольным работам и т.д. Благодаря нашему сервису вы получаете возможность скачать на телефон шпаргалки по логическому программированию. Все шпаргалки представлены в популярных форматах fb2, txt, ePub , html, а также существует версия java шпаргалки в виде удобного приложения для мобильного телефона, которые можно скачать за символическую плату. Достаточно скачать шпаргалки по логическому программированию — и никакой экзамен вам не страшен!

Сообщество

Не нашли что искали?

Если вам нужен индивидуальный подбор или работа на заказа — воспользуйтесь этой формой.

Предикат – конструкция вида: ( ) аргументы обозначают какие-то объекты или свойства о

Основы программирования на Турбо-Прологе: структура программы, внутренние и внешние цели.

Указывается вопрос (цель), на который должен ответить Пролог. 1) Цель может быть внутренней и внешней (Отличия в том, что при использовании внешней пролог ищет все решения, а внутренней только первое). 2) Отправная точка логического вывода. 3) На любой запрос пролог будет пытаться дать ответ «yes» или «no», если решений нет, то («No solution»).

вопросы на которых нет ответа

Запросы (цели ) 2 типа: 1 тип: Подтвердить справедливость факта или совокупность фактов. На запросы такого типа система выдает ответ «да» или «нет». 2 тип: В записях таких вопросов используют переменные – последовательности символов русского или латинского алфавитов, начинающихся с прописной буквы или символа «_». В качестве ответов выводятся значения переменных, удовлетворяющих информации в БЗ. Переменные: Обязательно начинается с прописной буквы
Крайне желательно использовать осмысленные имена переменных. Анонимная переменная: Анонимной переменной называют знак подчёркивания «_»; Она используется когда конкретное значение переменной несущественно.

Источник: cribs.me

Вопрос 5) Основные секции программы Prolog

Программа на Прологе включает следующие программные разделы описаний: доменов, динамических баз данных, предикаты, фактов и правил, цели. Раздел доменов: В разделе domains описываются любые используемые домены (типы аргументов пользователя), которые не являются стандартными доменами Пролог-программы. Стандартные домены не описываются.

Читайте также:
Электронные таблицы это прикладные программы предназначенные для проведения табличных расчетов

Домены в языке программирования Прологе подобны типам в Паскале. Раздел domains служит двум оченеь важным делам. Во первых можно определить для доменов осмысленные имена, причем даже в том случае, если внутренне они совпадают с именами уже существующих доменов.

Во вторых объявления специальных доменов используются для объявления структур данных, которые стандартными доменами не определяются. Синтаксис: domains name=type — стандартный mylist=elevent* — списочный Раздел описания динамических баз данных: Иногда в процессе выполнения программы может возникнуть потребность видоизменения некоторых фактов, с которыми работает программа.

В таком случае факты образуют динамическую или внутреннюю базу данных. В прологе для объявления в программе фактов, которые должны стать частью динамической БД, предусмотрен специальный раздел – database. Имеется несколько встроенных предикатов, существенно облегчающих использование динамических БД (consult,save,assert,retract).

Раздел описания предикатов: Раздел описания предикатов начинается со служебного слова predicates и предназначен для объявления предикатов пользователя. Встроенные предикаты Пролога в этом разделе не объявляются. Имя предиката может начинаться с буквы или знака подчеркивания. Затем могут следовать буквы, цифры и символы подчеркивания.

Величина букв значения не имеет, однако не рекомендуется использовать в качестве первой буквы Заглавную. Кроме того нельзя использовать символы пробела, минуса, звездочки, обратной и прямой черты. Количество символов, описывающих имя предиката не должно превышать 250. синтаксис: predicates name(integer) name2(string, integer)

Источник: studfile.net

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru