我一直在阅读关于差异列表有多大的内容,我希望测试书中的一些示例。但似乎您不能以与例如 append([1,2,3], [4,5], X) 相同的方式将列表作为输入传递,其中 X=[1,2,3, 4,5]。奇怪的是,我查阅过的书都没有提到这一点。
我在 swipl 上运行代码,我有兴趣测试不同的附加谓词:
dapp(A-B,B-C,A-C).
和“旋转列表的第一个元素”谓词:
drotate([H|T]-T1,R-S) :- dapp(T-T1,[H|L]-L,R-S).
任何想法,我如何在 swipl 中测试这些谓词?
最佳答案
尝试:
dapp([1,2,3|X] - X,[4,5,6] - [],Y - []).
drotate([1,2,3|X] - X,Y - []).
Y 是两个谓词的答案。
关于list - 测试 Prolog 差异列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6635451/