목록을 분리하기 위해 Prolog의 append와 length 술어를 처음 사용하려고합니다. 재귀적인 해결책이 필요합니다. 나는 Prolog에 처음 왔으며이 시동기 문제에 대한 도움을 원합니다! :)Functor로 목록 추가하기
가 여기에 예상되는 코드 출력 :
?- splits([1,2,3],S).
S = [1]/[2, 3] ;
S = [1, 2]/[3] ;
false.
그것은 목록을 소요하고 그것을 분할하지만,이 펑터 /과 구조를 만들어 그렇게이 지금까지 저를 혼란 것입니다 .. 나는 이것을 위해 append를 사용해야한다는 것을 알고 있지만 어떻게 그렇게 할 수 있을까? 목록의 꼬리가 빌 때까지
splits([H | T], S) :-
length(T, len), len > 0,
그것은 작동 한 후 중지,하지만 난 꽤 APPEND 기능을 추가하는 방법을 알아낼 수 없거나 : 여기
지금까지 내 코드입니다 재귀 적으로 만드십시오 누군가 제게 조언을 해줄 수 있습니까? :)
여기에 큰 도움이되었습니다! 목록 연결 이해에 도움 주셔서 감사합니다 :) – user3290526