3
프롤로그에 문제가 있습니다. 명령형 패러다임을 가진 또 다른 언어라면 나에게 더 쉽습니다.하지만 그 점은 중요하지 않습니다. 몇 가지 항목이 있으며 그 중 일부는 얻을 수있는 요구 사항이 있습니다. 예를 들어, 항목 b가 있으면 이미 항목이 있음을 의미합니다.프롤로그의 항목 및 요구 사항 목록 확인
to_get(b):-
need(a).
to_get(a3):-
need(a2),
need(a1).
그래서 목록이 있습니다. 어떤 항목이 있는지 확인한 다음 각 항목의 요구 사항이 있는지 확인해야합니다. 그것이 없으면 새로운 목록을 만들어 거기에 추가해야합니다. 그리고이 새로운 목록을 반환하십시오.
L1 = [b, a1, a3]
B는 필요하지만 그게 새로운 목록에 의미 있도록이, L1에서 L2
내가 그런 바보 같은 질문하지 희망L2 = [a, a2]
하지, 난 그냥 해요 새로운 프롤로그. 감사합니다.
정의되지 않은 절차 : nonmeber/2 ERROR : 그러나,에 대한 정의가 있습니다 : 오류 : 비회원/2 지금이 오류가 발생합니다. –
@false 누락 된 항목이없는 경우 실패하려면 들여 쓰기를합니까? 예 :'? - items_missingitems ([a], X)'. 빈 목록은이 경우 더 자연 스럽습니다. –
@WouterBeek : 이것은 오래된 부정적인 질문입니다. 두 가지 모두 요점이 있습니다. – false