8得票5回答
SWI-Prolog如何显示完整答案(列表)?

我正在尝试将一个字符串转换为ASCII码列表,如下所示: 7 ?- string_to_list("I'm a big blue banana in space!", C). C = [73, 39, 109, 32, 97, 32, 98, 105, 103|...]. 8 ?- ...

8得票3回答
Prolog中的nth1匿名变量是什么?

我有一个包含整数和匿名变量的列表,并尝试找到特定值的索引。问题是,一旦我使用nth1/3来查找索引,Prolog就会为匿名变量分配值,因此我会找到太多的索引。 例如:List = [1,\_,1],我希望得到X = 1, X = 3这个结果,但如上所述,我会得到X = 1, X = 2, X...

8得票3回答
如何在不按空格键的情况下查看SWI-Prolog中的所有答案?

简单示例: ?- between(1,10,X). X = 1 ; X = 2 ; X = 3 ; X = 4 ; X = 5 ; X = 6 ; X = 7 ; X = 8 ; X = 9 ; X = 10. 当使用SWI-Prolog并使用REPL查看下一个答案时,需要按下空格键。 ...

7得票1回答
为什么我的Prolog矩阵答案中会出现“...”?

我写了一段小代码来创建坐标矩阵(类似于棋盘),如下所示: createMatrix(N,M,R) :- creaMatriu(N,M,A), reversed(R,A). creaMatriu(N,0,[T]) :- creafila(N,0,T),!. creaMatriu(N,M,[T|...

7得票2回答
在PROLOG查询中,是否/否定的返回结果是什么?

我正在学习PROLOG,但是我很难理解为什么我执行的查询结果会以“yes/no”结束。以下是我的知识库: male(albert). male(bob). male(bill). male(carl). male(charlie). male(dan). male(edward). fem...

7得票2回答
Prolog中的“false”和“no”的区别是什么?

我开始学习Prolog,使用的书是Programming in Prolog: Using the ISO Standard。在语言介绍的第7页中,他们提出了这样一个观点:“在Prolog中,答案no表示没有任何东西与问题相匹配。记住no并不等同于false。”那么为什么SWI-Prolog使...

7得票2回答
在SICStus Prolog / SWI-Prolog REPL中定义谓词

我正在阅读http://cs.union.edu/~striegnk/learn-prolog-now/html/node3.html#subsec.l1.kb1,但是我无法运行以下谓词: SICStus 4.0.1 (x86-win32-nt-4): Tue May 15 21:17:49...

7得票3回答
Prolog列表成员,返回多个结果

我有一个确定列表成员的标准流程: member(X, [X|_]). member(X, [_|T]) :- member(X, T). 我不理解的是,当我提出以下查询时: ?- member(a,[a,b]). 结果是。 True; False. 我本以为当第一个规...

7得票1回答
如何在Prolog中关闭"true"和"false"输出?

我希望能使用Prolog编写一个基于文本的小冒险游戏(可能这很蠢,但我不想在这里讨论这个问题)。唯一的问题是我无法在屏幕上输出文本而不显示“true”和“false”值。 例如,如果我尝试以下内容: take(desk) :- write('This thing is way too he...