안녕 얘들 아, 내가 당신을 도울 수있는 간단한 프롤로그 질문. 기본적으로 두 개의 목록과 정수로 입력을 사용하는 함수를 작성하려고합니다. 여기서 함수는 x + y가 입력 정수와 같도록 첫 번째 목록에서 x를 찾고 두 번째 목록에서 y를 찾으려고 시도합니다. 두 개의 목록 페어링
지금까지 난 그냥 다음과 같은 일을 수행하여 아래로 재귀 할 생각입니다 :sum([H1|T1], [H2|T2], Value) :-
NewVal is H1+H2
% Check for equality?
sum(List1, T2, Value)
sum(T1, List2, Value).
그래서, 몇 가지 질문이 방법에 관한.
1) H1 | T1로 전달한 후 "전체"목록을 어떻게 참조합니까? 위 예제에서 나는 쉽게 List1과 List2라는 이름을 붙였다.
2) 평등을 확인할 수는 있지만 어떻게 검색을 중지하고 출력을 강제합니까?
아, 결국 다른 도움을 받아 세 개의 다른 절을 알아 냈습니다.하지만이 점은 훌륭하게 작성되었습니다. 감사합니다. 또한 세미콜론 연산자에 대해서도 몰랐습니다! – dhorn