2012-04-07 2 views
0
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, что является минимальным для каждого списка, который я хочу добавьте эти значения и верните их. в списке или как одно значение.Как добавить текущий и предыдущий в Prolog? Начальный пролог

ответ

1

Я думаю, что это то, что вы хотите. Добавление Y в список каждый раз.

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

Вам действительно нужна переменная K? Кажется, мало что делает.

Смежные вопросы