데이터베이스에서 내 조건에 맞는 객체로 가득 찬 목록을 얻으려고합니다. "INFI/A" findall(Ns,(student(Id,List),subset([infi/a],List)),L1)
: student(1234,[statistics/a,algorithms/b,prolog/a,infi/b]).
student(4321,[java/a,algorithms
프롤로그에 문제가 있습니다. 다음은 내가 사용하는 코드 중 일부입니다. has_same_elements([X|_],Y) :-
permutation(X,Xnew),
member(Xnew,Y), !.
has_same_elements([_|Tail],Y) :-
has_same_elements(Tail,Y).
이것은 두 개의 목
내가 Prolog에서 만든 규칙의 솔루션 목록을 얻고 싶습니다. 그러나 findall 조건자는 하나의 변수에서만 작동하는 것처럼 보입니다. 누구나이 명백한 한계를 극복하는 방법을 제안 할 수 있습니까? 내 규칙 beat(P,M,E)
내가 원하는 무엇 L = [[P,M],[P,M],................]
내가 지금 무엇을 얻을 L = [P,P
findall을 Prolog에 사용하는 방법 backtracking에 영향을주지 않고 목표 내에서 작업을 수행하려면 어떻게해야합니까? 다음의 예는 내가 달성하기 위해 노력하고있어 설명합니다. "실행"나는 실행할 때, value('M1', 11, 3).
value('M2', 11, 3).
connection('M1',1, 'A', 'B').
conne
안에 나는 이것을 쓰고 싶습니다 paths(Result) :-
findall(B, f(B) , Result).
f(B) :-
f1(B),
f2(B).
을 한 줄에. 내가 목표 성명에서 표현 '과'방법을 모르는 paths(Result) :-
findall(B, f1(B) AND f2(B), Result).
: 같
나는 여우와 거위 유형의 게임에 AI를 쓰고 있습니다. 내 술어 중 하나는 다음과 같습니다. moveFox(+PrevState, -NextState, -PegList, +VisitedStates, -NewVisitedStates)
여우와 함께 게임 상태가되고 이동합니다. 결과 상태는 NextState으로 통합되고 실제 이동은 PegList으로 통합됩니다
문제를 해결하기 위해 GNU Prolog를 사용합니다. 나는 다음과 같은 조건을 정의했습니다 : % P is the product of X and Y
produit(X,Y,P) :-
between(2,200,X),
between(2,200,Y),
X #<# Y,
X*Y #=# P.
% S is the sum of X
는 최근 프롤로그를 주운 유명한 퍼즐에 대한 해결책을 찾기 위해 프로그램을 만들려고 노력하고 있어요 나이트 투어 내가 노력하고있어 Warnsdorff 알고리즘을 사용하여 [여기] 체스 보드의 특정 지점에서 가능한 모든 동작을 찾은 다음 체스 보드가 만들어지면 가능한 한 최소한의 동작을 수행 한 다음 프로세스를 반복합니다.하지만 이동을 찾는 데 문제가 있습니