小编imo*_*ora的帖子

如何在prolog中返回从右到左大于一个谓词中的整数的所有元素?

我必须编写一个代码来返回给定列表中严格大于给定整数的所有元素,它从左到右返回。除了内置函数,我不能使用递归或任何其他函数:append/3、append/2、member/2、select/3、reverse/2、findall/3、bagof/3、setof/3、sumlist/2

示例案例:

greater_list([1,9,2,8,3,7,12],7, X).
 X = 12 ? ;
 X = 8 ? ;
 X = 9 ? ;
 no
Run Code Online (Sandbox Code Playgroud)

我可以用递归或帮助谓词来编写它,但没有它们我不知道如何开始。我可以使用 findall/3 但它不会逐个返回元素,而是返回大于给定数字的元素列表。

recursion prolog

2
推荐指数
1
解决办法
277
查看次数

标签 统计

prolog ×1

recursion ×1