从Prolog中的列表中删除前N个元素

Ele*_*ena 2 list prolog

如何从Prolog中的列表中删除前N个元素?如何将列表中的前N个元素转换为另一个列表?我需要这个,以便从指定位置的另一个列表中插入一个列表.我已经有了连接函数,并计划获取初始列表的前N个元素的列表,将其与第二个列表连接,然后将结果与第一个列表中剩余元素的列表连接起来(通过删除第一个N个元素).

lio*_*ori 13

?- length(X, 3), append(X, Y, [a,b,c,d,e,f,g,h]).
X = [a, b, c],
Y = [d, e, f, g, h].
Run Code Online (Sandbox Code Playgroud)