如何在Prolog中添加当前和以前的?初学者序言

时间:2012-04-07 19:21:34

标签: prolog

calcHeu([],K) :- nl.
calcHeu([X|Rest],K) :-
findMin(X,Y),write(Y),
calcHeu(Rest,Y).

如果我通过[[1,2,3],[5,4,9],[7,8,9]]它将打印1 4 7,这是我想要添加这些值的每个列表的最小值归还他们。在列表中或作为单个值。

1 个答案:

答案 0 :(得分:1)

我认为这就是你想要的。每次都将Y添加到列表中。

calcHeu([],K,List) :- nl.
calcHeu([X|Rest],K,[Y|Tail]) :-
findMin(X,Y),write(Y),
calcHeu(Rest,Y,Tail).

你真的需要K变量吗?似乎做得不多。