Сделать домашней|Добавить в избранное
 

Сайт, посвящен программированию,
исходникам разных программ и
известным алгоритмам

 
Исходники программ » Языки программирования » Prolog » Введение в программирование на Prolog
на правах рекламы

Введение в программирование на Prolog

Автор: admin от 3-07-2012, 14:49

Пролог-программы, должны содержать как минимум две части:
- predicates - часть для описания структур отношений, используемых в программе, в виде предикатов;
- clauses - часть для определения предикатов в виде набора фактов и правил.

Возьмем, к примеру код программы:

predicates
   likes(string, string)
clauses
   likes("Ivan", "Maria").
   likes("Petr", "Pivo").
   likes("Ivan", X) :- likes("Petr", X).


в части predicates описание типов - будут строковые переменные(в нашем случае),
в части clauses наборы фактов и правил, например, Иван и Петр любят пить пиво, и это заключено в строчках
   likes("Petr", "Pivo").
   likes("Ivan", X) :- likes("Petr", X).

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

Теперь запускаем программу:
пишем в части Goal (правая часть от программы):
Goal: likes(Who, "pivo")


Результат выполнения этого запроса:
Who = Petr
Who = Ivan
2 Solution


Пролог отличается разительно от других языков программирования тем, что он логический. То есть писать на нём нужно логичными фактами и утверждениями, выводить цепочку фактов и потом получать в запросно-диалоговом режиме истину на запросы. При этом запросы надо уметь составлять, поэтому даже пользователь программы должен уметь как минимум пользоваться средой программирования- в нашем случае это TurboProlog.

 

Если вам нравится то, что мы пишем, пожалуйста, нажмите на интересующую вас рекламу сбоку, сверху, или сразу после статьи. Будет стимул писать лучше и чаще. Хорошего вам дня.

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Комментарии:

Оставить комментарий