append([],Xs,Xs).
append([Head|Tail],List2,[Head|Tail2]):-
append(Tail,List2,Tail2).
상위 추가 방법은 처음 두 매개 변수 슬롯의 요소를 세 번째 매개 변수에 추가합니다.목록 요소를 추가하는 프롤로그 방법을 이해하는 데 도움이 필요합니다.
?-append([2,1], [3,4], X).
?-X=[2,1,3,4]
전 단계에서 볼때는 (propably 잘못이다) 인 ->
- APPEND (2 | [1], [3,4], 2 | X)
APPEND ([1], [3,4], X)
APPEND (1 | [] [3,4] 1 | X)
- APPEND ([] [3,4 ], [3,4])
그게 전부입니다. 필자는 요소를 더하는 방법에 대해 머리를 감쌀 수 없으며,이 방법이 어떻게 작동하는지에 대한 명확한 설명이 도움이 될 수 있습니다. 나는 [2,1] 배열이 어떻게 최종 결과에 추가되는지 이해하지 못합니다. 재귀의 X