正整数和负整数

himanshu040

我一直在尝试在Prolog中创建谓词,该谓词将整数列表分为正整数列表和负整数列表。正整数列表包含可被2整除的整数,负整数包含可被3整除的整数

具有预期结果的示例查询:

?- split([-9,6,3,4,-8,-12],X,Y).
X = [6,4],
Y = [-9,-12].

这是我到目前为止得到的代码:

split([], [], []).
split([Head|Tail], [Head|List1], List2) :- Head>=0,Head mod 2==0, split(Tail, List1, List2).
split([Head|Tail], List1, [Head|List2]) :- Head<0,Head mod 3==0, split(Tail, List1, List2).

我似乎无法弄清楚我在做什么错。

头发C.

只是要注意,SWI-Prolog库(套用),特别是与库(yall结合使用时,为常见的列表处理任务提供了现成的解决方案:

split(L,A,B) :-
  partition([E,C]>>(
    E>0, 0=:=E mod 2 -> C = <
  ; E<0, 0=:=E mod 3 -> C = >
  ; C = =),L,A,_,B).

?- split([-9,6,3,4,-8,-12],X,Y).
X = [6, 4],
Y = [-9, -12].

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在正整数和负整数之间进行匹配

熊猫排名为负整数和正整数,多列

用while循环计算负整数和正整数

生成唯一的正整数和负整数序列的排列

为什么负整数比正整数多?

将正整数转换为负整数

在包含正整数和负整数的向量中找到最小的缺失整数?

通过两个整数数组对正整数和负整数进行排序

为正整数和负整数、浮点数编写正则表达式

OWL:非负整数和正整数之间有什么区别?

正整数和负整数的正则表达式,并且仅减去 JS

如何将字符串仅拆分为正整数和负整数?

用正整数、负整数、NA 和空白计算向量中的数字

在一种java方法中找到负整数和正整数的乘积。答案是打印 0

在R中,如何对具有负整数和正整数的列进行行求和?

如何区分二元决策图的正整数和负整数

Python:从字符串中过滤正整数和负整数

我正在尝试计算正整数和负整数中的小数位数

整数对象身份测试:大正整数和小负整数之间的行为不一致

如何检查给定的值是正整数还是负整数?

根据正整数或负整数更改文本颜色

在列中基于正整数或负整数排序MySQL表

对python负十进制的模运算。十进制和正整数

在正整数和最大正整数之间打印倍数

对整数数组进行排序,前面是负整数,后面是正整数

Java-检查输入是否为正整数,负整数,自然数等。

Java数学函数将正整数转换为负数并将负整数转换为正数?

java我如何将负整数读为正整数

取正整数n并返回小于n的所有正整数的平方和的Python函数