我是 Prolog 的新手,正在尝试为分配的严格递减序列编写程序。
现在定义一个谓词 isOrdered,如果列表中的项目 Lst 是严格递减的顺序,则“isOrdered(Lst)”成功。您可以假设 Lst 仅包含数字。例如 ?- isOrdered([11, 5, 3, 0])。真的。
这是我到目前为止所拥有的:
isOrdered([]).
isOrdered([A|B]) :- isOrdered([B]), A > B.
它给了我一个错误,说明本地堆栈之外。似乎无法解决这个问题。