Результаты поиска по запросу "prolog"

7 ответов

Раскрась список в Прологе

Я работаю с Прологом всего пару дней. Я понимаю некоторые вещи, но это меня действительно смущает. Я предполагаю написать функцию, которая берет список и выравнивает его. ?- flatten([a,[b,c],[[d],[],[e]]],Xs). Xs = [a,b,c,d,e]. % expected ...

1 ответ

Пролог рекурсивная грамматика

в тот момент, когда у меня возникла проблема с возвратом кnoun_phrase отnp2. Мне было интересно, если кто-то может помочь мне вернуться кnoun_phrase. Вот некоторый код: noun_phrase([X|T],(det(X), NP2),Rem):- det(X), ...

2 ответа

prolog конвертирует числа в римские цифры

меня есть этот код, который преобразует целые числа в римские цифры. Мне нужно добавить функцию, которая сравнивает целое число с вводом римских цифр и показывает, является ли оно try или false, например: roman (v, 5). правд toroman(0). ...

ТОП публикаций

3 ответа

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

В настоящее время я могу генерировать деревья выражений. expression_tree([_|N_s],N_s, [number(0)]). expression_tree([_|N_s0],N_s1, [op(neg),[E1]]) :- expression_tree(N_s0,N_s1, E1). expression_tree([_|N_s0],N_s2, [op(add), [E1, E2]]) ...

4 ответа

Определить граф в Прологе: ребро и путь, найти, есть ли путь между двумя вершинами

Я очень новичок в Прологе. Я определил вgraph.pl следующий график: А вот мой код Пролога: edge(a,e). edge(e,d). edge(d,c). edge(c,b). edge(b,a). edge(d,a). edge(e,c). edge(f,b). path(X,X). path(X,Y):- edge(X,Z) ; path(Z,Y). Я так понимаю: ...

2 ответа

gprolog: получение трассировки стека после исключения

Пока использую Gprolog У меня часто бывают исключения без каких-либо номеров строк или контекста, подобных этому: uncaught exception: error(instantiation_error,(is)/2) Без всякого контекста. Я знаю, что могу сделатьtrace но отладка с помощью @ ...

2 ответа

рекурсивный предикат Пролог?

Я сейчас работаю над проектом и хочу внедрить предикат помощника в Прологе break_down(N, L) который работает следующим образом ?- break_down(1,L). L = [1] ; false. ?- break_down(4,L). L = [1, 1, 1, 1] ; L = [1, 1, 2] ; L = [1, 3] ; L = [2, ...

1 ответ

Логическая чистота когда / 2 и земля / 1

Вопро У меня есть вопрос, связанный с логической чистотой. Эта программа чистая? when(ground(X), X > 2). Некоторые [ir] соответствующие подробности о контексте Я пытаюсь написать чистые предикаты с хорошими свойствами завершения. ...

1 ответ

Особенности хорошего кода Пролога? [закрыто

Какую эвристику дизайна нужно освоить, чтобы написать хороший Пролог? Я слышал, что опытному программисту требуется около двух лет, чтобы стать опытным в Прологе. Эффективное использование рекурсии является частью этого, но это, кажется, ...

6 ответов

Расписание матчей по теннису

Есть ограниченное количество игроков и ограниченное количество теннисных кортов. В каждом раунде может быть не больше, чем количество матчей. Никто не играет 2 раунда без перерыва. Все играют матч против всех остальных. Составьте расписание, ...