如何在prolog

时间:2015-05-22 17:19:53

标签: prolog

我希望在Prolog中有一个如下所示的条件表达式并进行测试。

checkNum(X,Y,helloWorld):- X=Y+1.

但是当我测试 checkNum(7,6,Z)时,它说不!我认为这种情况属实,但我无法理解它为什么不起作用。

1 个答案:

答案 0 :(得分:1)

X=Y+1尝试将变量X与术语Y+1统一起来。

当您将76传递给您的程序时,它会尝试将76+1这两个不相等的词统一起来。

您想要的是评估表达式的右侧(Y+1)并查看它是否等于X。 为此,您必须使用is/2

因此,您应该使用X is Y+1