Практическая информатика




Базы знаний - часть 2


Выполнение предиката nl/0 осуществляет перевод строки: последующий вывод начнется с новой строки. Предикат tab/1 выводит количество пробелов, определяемое его аргументом.

Пример

?- write('Hello World!'). Hello World! Yes

?- write('Hello'), nl, tab(5), write('World!'). Hello World! Yes

?- X = слон, write(X), nl. слон

X = слон Yes

В последнем примере сначала переменная X унифицируется с атомом слон, а затем значение переменной X, т. е. слон, выводится на экран при помощи предиката write/1. После перехода на новую строку Пролог выдает отчет об унифицированной переменной, т. е. печатает X = слон.

Большинство Пролог-систем предоставляет доступ к справочной информации при вызове предиката help/1. Примененный к терму (обычно представляющему имя встроенного предиката) он осуществляет вывод краткого описания этого терма.

Пример

?- help(write). write(+Term) Write Term to the current output, using brackets and operators where appropriate. See feature/2 for contrillong floating point output format.

write(+Stream, +Term) Write Term to Stream. Yes

И, напоследок, поговорим о комментариях. Комментарии никак не влияют на выполнение программы, но при правильном их использовании они оказываются весьма существенной частью исходного текста. Несколько удачно расположенных строк с комментариями могут оказать человеку, читающему программу, большую помощь. Пролог игнорирует произвольное число строк, заключенное между символами /* и */. Все, что находится между % и концом строки, также рассматривается как комментарий:

Пример

/* Это комментарий */

% Это тоже комментарий




Содержание  Назад  Вперед