2
我是Prolog中的新成員。 我知道排列的遞歸函數,即:序言排列函數
per([],[]).
per(L, [X|P]) :- del(X,L,L1),per(L1,P).
我想知道在最後一次迭代這個功能的邏輯樹,當我們收到per([],[])
哪個元素回來。
我是Prolog中的新成員。 我知道排列的遞歸函數,即:序言排列函數
per([],[]).
per(L, [X|P]) :- del(X,L,L1),per(L1,P).
我想知道在最後一次迭代這個功能的邏輯樹,當我們收到per([],[])
哪個元素回來。
索尼婭 - 你沒有給我們'del'謂詞,所以我們不能運行它並告訴你。
你知道嗎有一個'痕跡'謂詞傾倒每一步/決定點/回溯?
只要做到:
trace.
per([a,b], X).
然後按ENTER鍵,直到你看到序言比賽遞歸的基礎([],[]),然後繼續按Enter鍵觀看它完成任務。
如果在任何時候你想看到顯示爲點結束生成縮寫列表(即列表[..],然後按「W」 - 寫傾倒了整個列表內容
然後最後,這樣做:
notrace.
要關閉
,然後如果你有關於跟蹤的具體問題,建議增加在缺少謂語,並顯示你周圍有問題的部分痕跡
。
不,我不知道追蹤。感謝magus。 – 2012-04-29 06:25:22