我已经阅读了一些相同的问题但代码不同的问题,遗憾的是正在发布另一个问题。
我正在关注我的教授笔记并将我的插入语句建模与他们的阶乘函数相同,如此处所示。
factorial(0, 1).
factorial(N, F) :-
N > 0,
N1 is N – 1,
factorial(N1, F1),
F is N * F1.
我的插入功能是
insertPos(V, 0, [H|T], [V|[H|T]]).
insertPos(V, N, [H|T], R) :-
N > 0,
N1 is N-1,
insertPos(V, N1, T, R1),
R is [H|R1].
正在抛出的错误是R
我[H|R1]
希望R1
从我的检索insertPos/4
并将头部附加到它上面。
我的查询是:
?- insertPos(D, 1, [A,B,C], L).