여러 항목이 포함 된 프롤로그 목록이 있습니다. 이 목록의 내용을 '정규화'하고 결과를 새 목록에 써야합니다. 하지만 여전히 문제가 있습니다. 다음 코드는 내가 그것을 어떻게 보여줍니다프롤로그 목록에 항목을 추가하는 방법
normalizeLists(SourceList, DestList) :-
% get all the member of the source list, one by one
member(Item, SourceList),
% normalize the item
normalizeItem(Item, NormItem),
% add the normalize Item to the Destination List (it was set [] at beginning)
append(NormItem, DestList, DestList).
문제는 APPEND 술어입니다. 나는 같은 프롤로그에, 나는 절대적으로 프로그래밍과 같은 일을 할 수 없기 때문에이 추측 :
DestList = DestList + NormItem,
하지만 내가 어떻게 프롤로그에서 그런 일을 할 수 있습니까? 또는 내 접근 방식이 올바르지 않은 경우, 어떻게 이런 종류의 문제를 해결할 수있는 프롤로그 코드를 작성할 수 있습니까?
정말 도움이됩니다.
건배는 프롤로그에서
안녕 CapelliC처럼 고차 술어를 사용합니다. 그것은 올바르게 작동합니다. 감사. BTW, 그렇습니다. 내 프롤로그는 매플리스트를 지원합니다. 매플리스트에서하는 방법에 대한 정보를 좀 더 공유 할 수 있습니까? 감사합니다 –
나는 (그냥 당신의 제안을 시도하여) 매 플라이 스를 시도하고 놀랍게 작동합니다. 불필요한 코드를 줄입니다. 감사 –