Prolog 创建一个谓词,该谓词将在调用时为查询编写解决方案

Prolog 创建一个谓词,该谓词将在调用时为查询编写解决方案,prolog,Prolog,查找将收集给定数据库的正确解决方案的查询 之后,我们必须使用这些查询创建一个称为“answer”的谓词,这样在Prolog中键入“answer.”将写出所有的解决方案 e、 g.它应该看起来像: ? - answer. [solution to a] [solution to b] [solution to c] true. 然而,我不知道如何创建一个谓词,在这里我不必向它传递任何项/变量。每当我试图创建一个谓词“answer”并调用它时,就会出现错误,说“answer”不能有0项 编辑:问题

查找将收集给定数据库的正确解决方案的查询

之后,我们必须使用这些查询创建一个称为“answer”的谓词,这样在Prolog中键入“answer.”将写出所有的解决方案

e、 g.它应该看起来像:

? - answer.
[solution to a]
[solution to b]
[solution to c]
true.
然而,我不知道如何创建一个谓词,在这里我不必向它传递任何项/变量。每当我试图创建一个谓词“answer”并调用它时,就会出现错误,说“answer”不能有0项

编辑:问题是:

使用上面的精确查询,创建一个谓词“answer”,该谓词使用write上述答案打印,即,以下查询将起作用:

-回答

[问题a的解决办法]

[问题b的解决办法]

[问题c的解决办法]


回答上述问题的事实,因为没有给出任何事实

question_1(42).
question_2("Towel").
question_3("Thanks for all the fish.").
代码

运行示例:

?- answer.
Answer 1: 42
Answer 2: Towel
Answer 3: Thanks for all the fish.
true.

注释的唯一部分是打印答案。

多么好的标题啊,如果只有一个谓词可以这样做,那么我们就不需要更多的谓词了。能不能请你把你的题目写得更具体一些。帮个忙,把你的作业和你试过的东西贴出来。根据你的提问,目前我知道的唯一答案是。即使是SWI Prolog也知道我把问题写在作业中,但不确定它是否能让问题变得更清楚。上面的
您的确切查询是什么请发布它们。因此,如果我做对了,问题是-如何使用零参数谓词来显示所有解?
?- answer.
Answer 1: 42
Answer 2: Towel
Answer 3: Thanks for all the fish.
true.