例如,如果我想获得总和为10的所有可能的自然数对,我将如何得到prolog来做到这一点? 如果我的代码是这样的: sumsTo10(X,Y):-
Z is X+Y,
Z == 10.
然后是的,如果我问,如果5,5和10,我得到一个真正的答案,但我想是这样的: ?-sumsTo10(A,B).
[1,9]
[2,8]
....
我试图在Prolog中创建自己的排序规则,经过大量的试验和错误之后,除了按下按钮之外,我能够使其工作。在swipl中,它会将我列表的最后一个值添加到列表中。 使用的代码如下: 分钟以列表找到的最小值,并返回它 min([H|[]],H).
min([H|T],Min) :-
min(T,CurrentMin),
H < CurrentMin,
Min = H.
m