0
ответов

симпатично-распечатать терм пролога

Как красиво напечатать список термов в SWI-Пролог. Я пытался:изобразить_пункт([term1, term2]). но это просто записывается в виде длинного потока, а строка даже выводится в виде списка символов ascii...
вопрос задан: 2 February 2014 22:56
0
ответов

Интеграция пролога в другие среды

Я использую Пролог для академического проекта. Я хотел знать, есть ли способ взаимодействия Пролога с другими языками программирования. Что мне нужно, так это простое перенаправление ввода/вывода вопроса Пролога...
вопрос задан: 2 February 2014 22:50
0
ответов

Как мне вернуть список на Прологе?

Допустим, у меня есть следующие факты: parent (bob, sam). % Боб - родитель Сэма родитель (Сара, Сэм). % sara - родитель Сэма. Я хотел выяснить, кто были родителями Сэма, и вернуть их в список, и поэтому использовал: ...
вопрос задан: 27 January 2014 20:39
0
ответов

SWI -Prolog -Fail to Assert

Я определяю оператор следующим образом::-op (500, xfx, => ). Когда я пытаюсь что-то вроде :assert (a => b ). Пролог выдает сообщение об ошибке «Нет разрешения на изменение статической _процедуры (=> )/2». Любой...
вопрос задан: 26 January 2014 00:42
0
ответов

Почему SWI-Prolog объединяет строку в кавычках и без кавычек (без пробелов) в одно правило?

Предположим, у меня есть следующие правила: unify ('тест', 'это тест'). run: - write ('Введите что-нибудь:'), прочитайте (X), объедините (X, Y), запишите ('Ответ'), напишите (Y). А затем я запускаю ...
вопрос задан: 26 January 2014 00:40
0
ответов

Нетривиальный поиск и замена в Prolog

Таким образом, мы можем легко найти и заменить атом другим атомом в Prolog, выполнив что-то вроде: replace ([], A, B, []). replace ([H | T], A, B, [B | Результат]): - H = A, replace (T, A, B, Result),!. replace ([H | ...
вопрос задан: 25 January 2014 22:19
0
ответов

выполнение операции для каждого элемента списка в swi-prolog и других

Как сделать операцию для каждого элемента списка по порядку? Основываясь на этих двух ресурсах: http://www.swi-prolog.org/pldoc/doc/swi/library/lists.pl http://www.swi-prolog.org/pldoc/doc_for?object=...
вопрос задан: 25 January 2014 22:07
0
ответов

предупреждение в прологе

Я написал этот предикат в прологе: list ([]). список ([X | L]): - список (L). он работает хорошо, но я получил это предупреждение: ** Предупреждение: /Users/hw6.pl:2: Singleton variables: [X] **%, что я могу ...
вопрос задан: 25 January 2014 22:01
0
ответов

Парсер RegEx, написанный на Прологе

Я уже несколько часов бьюсь головой о стену над этой домашней задачей. Мы должны анализировать регулярное выражение с помощью Prolog. По большей части предикаты у меня работают, но есть ...
вопрос задан: 25 January 2014 21:39
0
ответов

Как сделать вложенный оператор if-else в Прологе?

Если у меня есть эта функция: min (List1, List2, Output): - длина (List1, N), длина (List2, M), (N Output = 'true'; Output = 'false'). но что, если бы я хотел ...
вопрос задан: 25 January 2014 21:36
0
ответов

SWI-Prolog и ограничения, библиотека CLP (FD)

Я играю с ограничениями в (swi) прологе, используя clpfd библиотека. Я пытаюсь определить, когда один набор ограничений инкапсулирует или включает другой, например X <4 инкапсулирует X <7 как ...
вопрос задан: 23 January 2014 16:44
0
ответов

How compute Index of element in a list?

I am starting to play with prolog, and with a Java background it's really difficult for me so here is a silly question: How will you write an indexOf predicate able to give the index of a given ...
вопрос задан: 23 January 2014 16:21
0
ответов

prolog Searching the Lists

Я пытаюсь сравнить списки. Дана функция(List1,List2) и List1 имеет длину N, а List 2 имеет длину M и N>M. Я хочу проверить, если при любой перестановке List2 первые M символов ...
вопрос задан: 27 November 2013 22:10
0
ответов

Prolog - как очистить память и начать с нуля?

Я разрабатываю алгоритм в .pl файле и исследую его с помощью запросов в командном окне. Я использую динамические переменные и предикаты retract/assert. А когда я изменяю pl-файл и нажимаю на "...
вопрос задан: 24 November 2013 17:38
0
ответов

Решение головоломки Zebra (она же головоломка Эйнштейна) с использованием библиотеки Prolog clpfd

Мне дали упражнение для решения головоломки зебры с использованием решателя ограничений по моему выбору, и я попробовал его с помощью библиотеки Prolog clpfd. Я знаю, что есть и другие, более идиоматические способы...
вопрос задан: 24 November 2013 16:04
0
ответов

Вызвать ошибку в SWI Prolog

Я бы хотел напечатать сообщение и остановить оценку предиката. Как мне это сделать?
вопрос задан: 24 November 2013 13:10
0
ответов

Пересечение и объединение двух списков

Я начинаю изучать пролог (я использую SWI-пролог) и сделал простое упражнение, в котором у меня есть 2 списка, и я хочу вычислить их пересечение и объединение. Вот мой код, который работает довольно хорошо, но...
вопрос задан: 24 November 2013 12:55
0
ответов

Утверждение динамического правила в SWI-прологе

Я пытаюсь динамически добавить правило в базу знаний с помощью SWI-пролога, где тело правила заранее неизвестно. Требуемое правило выглядит примерно так: правило (а): - факт (1), факт (2) ....
вопрос задан: 23 November 2013 21:15
0
ответов

Пролог, используя выражения

Я пытаюсь изучить пролог SWI, но моя простая программа терпит неудачу, когда я считаю, что она должна быть успешной. % Мой код: ортогональные ((X1, Y1, Z1), (X2, Y2, Z2)): - (X1 * X2) + (Y1 * Y2) + (Z1 * Z2) == 0. integerVector ((X, Y, Z)): - ...
вопрос задан: 23 November 2013 20:52
0
ответов

Дублирующиеся решения

У меня проблема при попытке получить код, возвращающий уникальные ответы на мой запрос. Например, определяющий материал (A, B, C): - A = C; В = С. больше вещей([],[],[]). morestuff ([A | AA], [B | BB], [C | CC]): - stuff (A, B, C), ...
вопрос задан: 23 November 2013 20:26
0
ответов

Многоканальная древовидная конструкция от строки узла

Существует замечательный проблемный набор под названием Девяносто девять проблем Пролога. Проблемой P70 является та, упомянутая в заголовке. И вот большое решение для Пролога этой проблемы, которая проводит только 5 строк...
вопрос задан: 3 November 2013 00:21
0
ответов

Как я могу читать и запускать код Пролога на Java с помощью простого движка?

Я хочу запустить код Пролога, используя Java. Я нашел несколько движков, но единственным, который показался мне простым в использовании, был w-prolog. Однако, когда я попытался использовать его, я понял, что он не поддерживает простые вещи...
вопрос задан: 31 October 2013 17:24
0
ответов

Пролог, прорабатываю несколько примеров

Я прорабатываю несколько руководств по Прологу (лучше нечего делать, и ранее на этой неделе я узнал, что мне очень нравится программирование, поэтому я прорабатываю некоторые парадигмы) и приступил к упражнению, спрашивая меня to ...
вопрос задан: 30 August 2013 14:34
0
ответов

Первое использование SWI-Prolog

Я новичок в Prolog. Я просто пытаюсь получить какой-то вывод из Prolog в Windows Vista. Я скачал и установил Prolog 5.1; Я выбрал расширение файла .pro при установке (не для того, чтобы ...
вопрос задан: 30 June 2013 13:43
0
ответов

Какой хороший сайт для изучения Пролога? [закрыто]

Мне нужно сделать проект для класса на Прологе, но они не дали нам никакого руководства по самому языку. Я читал http://kti.mff.cuni.cz/~bartak/prolog/contents.html, но ничего не понял...
вопрос задан: 21 June 2013 17:01
0
ответов

Prolog- Загрузка библиотеки из файла

В руководстве Sicstus сказано, что для загрузки библиотеки используется: use_module (библиотека (пакет)). Это работает в Prolog в командной строке, но я не могу понять, как загрузить библиотеку из исходного файла Prolog. ...
вопрос задан: 7 June 2013 11:43
0
ответов

Упорядочивание строк в Прологе

Я хочу знать, как сравнить две строки, чтобы узнать, больше ли одна строка другой или нет. Я не хочу равенства/неравенства. Я хочу иметь старый добрый алфавитно-цифровой...
вопрос задан: 11 April 2013 23:32
0
ответов

подсчитать количество вызовов пункта

У меня есть предложение, подобное следующему :блокировке _открытому :-условному _сочетанию (X ), равному (X, [8,6,5,3,6,9] ),!, напечатайте (X ). этот пункт удастся. Но я хочу знать, сколько раз...
вопрос задан: 10 April 2013 17:14
0
ответов

Расписание теннисных матчей

Количество игроков ограничено и ограниченное количество теннисных кортов. В каждом раунде может быть столько матчей, сколько кортов. Никто не играет 2 тура без перерыва. Все ...
вопрос задан: 24 March 2013 18:04
0
ответов

zip-функция в Prolog

Я новичок в Prolog, и мое назначение требует, чтобы мы реализовали функцию, как описано ниже: Написать предикат Prolog zip ( L1, L2, L3), что верно, если список L3 получен путем сжатия (т. Е. Перетасовки ", ...
вопрос задан: 12 January 2013 16:34