我试图做这个练习,我应该建立一个prolog程序,当给定一个数字和一个列表时,返回一个没有数字倍数的列表。现在我做了这个: removeMultiples([],[]).
removeMultiples(N, [Head|Tail], Result):-
Head mod N =:= 0,
removeMultiples(N, Tail, Result).
removeMu
我正在做一个练习,要求实施from_to/3,在这里你给出了两个数字作为前两个参数,而Prolog给你列出了它们之间的所有内容作为结果。例如:会给R=[1,2,3,4,5]。 我写了下面的程序: fromto(N, O, []):-
N >= O.
fromto(N, O, [N|TailResult]):-
O > N,
O1 is O-1,
fro
我想计算列表的最小值,使用失败导致回溯。我如何改变min(Min,X,Min),使其工作。计算分 solve([Head|Rest], Ans) :-
solve(Rest, Till),
min(Ans, Head, Till).
%min(X, A, B) X is the min of A, B
min(X, X, Y) :- X =< Y.
min(Y, X,