我試圖完成的是獲得什麼'組件'沒有被使用。所以我創建了一個包含所有'組件'和'使用組件'的列表。
我的想法是比較這個列表並創建另一個不匹配元素的列表。獲取不在第二個列表中的元素
component('name 1', 1).
component('name 2', 2).
component('name 3', 3).
component('name 4', 4).
component('name 5', 5).
inUse(1, 'name 1').
inUse(1, 'name 3').
inUse(1, 'name 5').
comp_list(L):- findall(Comp, component(Comp, _), L).
inuse_list(L):- findall(Comp, inUse(_, Comp), L).
我不知道該怎麼做這樣的事情:member('name comp', List).
在那裏我可以與其他列表中的每個元素替換「名補償」。
在此先感謝。
例子:
L1 = ['name 1', 'name 2', 'name 3', 'name 4', 'name 5'] %comp_list(L).
L2 = ['name 1', 'name 3', 'name 5'] %inuse_list(L).
someRule(R):- comp_list(L1), inuse_list(L2), %more code, to obtain a list R with:
R = ['name 2', 'name 4'] (Elements lacking on inuse_list)
你能給你正在試圖做的,因爲到現在爲止還不清楚在所有... – coder
你好@coder什麼兩個列表的例子和。我已經添加了這個例子。 –