gpt4 book ai didi

list - 删除 List L 的最后 3 个元素以在 Prolog 中生成 List L1

转载 作者:行者123 更新时间:2023-12-04 00:09:30 25 4
gpt4 key购买 nike

如何编写一个目标,从列表 L 中删除最后三个元素,生成另一个列表 L1?

另外,我将如何编写多个目标来删除列表 L 中的前三个元素和后三个元素,从而产生 L2?

最佳答案

Prolog 它与其他语言有点不同,但它也有一个值得学习的库(标准 ISO):

delete_last_3(L, L1) :-  
append(L1, [_,_,_], L).

现在另一个请求很容易:

delete_first_and_last_3(L, L2) :-  
append([_,_,_], LT, L), delete_last_3(LT, L2).

测试:

?- delete_last_3([1,2,3,4,5,6,7],X).
X = [1, 2, 3, 4] .

?- delete_first_and_last_3([1,2,3,4,5,6,7,8,9],L).
L = [4, 5, 6] .

关于list - 删除 List L 的最后 3 个元素以在 Prolog 中生成 List L1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7682473/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com