我想在Prolog中獲得基於索引和值的對輸出。下面是我的代碼:作爲Prolog中的列表存儲和顯示結果
tagit0(L) :-tagit0(L, 1).
tagit0([], _) :- nl.
tagit0([H|T], N) :-
N1 is N + 1,
format('tag (~w, ~w), ', [N1, H]),
tagit0(T, N1).
運行此:?- tagit0([a,b,c],0).
給出:tag (1, a), tag (2, b), tag (3, c),
但我找一些輸出,是存儲在一個列表並顯示 像:
L = [tag (1, a), tag (2, b), tag (3, c)]
'tagit0(List,Result): - findall(tag(N,I),nth1(N,List,I),Result).' –