SWI-prolog 中的自然数递归过程
我的自然数的下一个过程是 SWI-prolog: natural_number(0). natural_number(s(X)) :- natural_number(X). 现在我想做一个递归调用,当我们到达 0 时…
prolog 中的变量问题
num(N) :- No=N, write(No), nl. check(S) :- No==S -> write(Ok) ; write(Not ok). 当我调用num(5)时,它打印5。但是在调用num(5)之后,当我调用che…
prolog 列出了 fd_all_ Different 和 is_set 哪个更快?
我只是想知道你们中是否有人知道什么更快, L=[1,2,3,4,5], all_different(L). % needs use_module(library(clpfd)). 或者 L=[1,2,3,4,5], is_set(L).…
prolog 自动用循环中的变量填充列表
如何用变量自动填充列表? 。 for(i=1;i<=9,i++){ addtoanylist(X_i); } 结果就像L=[X1,X2,X3,X4,X5,X6,X7,X8,X9] ? 这是因为我想为我的数独求解器建…
列表域和标签的序言列表
L=[[X,Y,Z],[1,A,B],[2,C,D]],L ins 1..3,all_ different(L),标签(L)。 我只想用值填充列表列表中的变量。有没有比 get_element_at(L,1) 等更简单…
在 SWI-prolog 中调试 - 未绑定变量
考虑以下 Prolog 代码。它在其输入中编辑特定类型的行,并打印出剩余的行,而不进行任何更改。它使用一个名为 rule 的 DCG,该 DCG 未包含在下面,因…
使用 =:= 运算符时出现 prolog 实例化错误
我正在编写一个名为 subseq 的函数,它检查一个列表是否是另一个列表的子序列。 subseq([],[]). subseq([],[Y|Ys]). subseq([X|Xs],[Y|Ys]) :- X=:=Y,…
序言问题! “单打” !
我有一个序言作业,它应该像这样工作: singles([1,2,3,2,2,4,1], [3,4]). true 现在我发现我应该测试列表中的一个元素是否是单个元素,然后将所有单…
查找存在多少个相同的对象
我有这段代码 color(blue). color(red). color(blue). color(green). ,我想制定一个规则来计算 X 颜色存在的次数。 对于这种情况,count_color(X) 应…
Prolog,使用表达式
我正在尝试学习 SWI prolog, 但当我认为我的简单程序应该成功时,它就会失败。 %My code: orthogonal((X1,Y1,Z1),(X2,Y2,Z2)) :- (X1*X2)+(Y1*Y2)+(Z…