3
首先,我是一個總Prolog新手,對於一個愚蠢的問題我表示歉意!序言列表 - 在元素前後打印列表
我需要編寫一個分解月份列表的規則,並在may
之前和may
之後幾個月打印。
到目前爲止,我寫了下面:
append_lists([], L, L).
append_lists([H|L1], [L2], [H|L3]) :-
append_lists(L1, L2, L3).
這個偉大的工程,如果我手動查詢以下:
| ?- append_lists(Before, [may|After], [jan, feb, july, may, dec, oct, nov]).
Before = [jan,feb,july],
After = [dec,oct,nov] ? ;
no
我怎麼能現在重寫我的規則,以便[may|After]
到位規則中的L1
,它可以接受任何月份?我嘗試了以下方法,但沒有奏效:
append_lists([], L, L).
append_lists([Month|Before], After, [Month|Result]) :-
append_lists(Before, After, Result).
謝謝gusbro!這非常有幫助:) – qwerty