Prolog中最多2个数字

时间:2014-04-12 16:45:03

标签: prolog

比较2个数字:定义一个带有3个参数的谓词great - 2 我想要比较它们的数字和返回的输出变量 最大的数字。

实施例。

?- great(X,3,5). 
X=5. 

用Prolog语言

1 个答案:

答案 0 :(得分:1)

你真的应该read the documentation。甚至可以阅读good book on the language

  • </2&#34;小于&#34;
  • >=/2&#34;大于或等于&#34;
  • =</2&#34;小于或等于&#34;

对于&#34;等于&#34;,您可以使用:

  • =/2(大致)&#34;等于&#34; (与之统一)
  • =:=/2是算术平等
  • =\=/2是算术不等式

我确定你能解决问题。

或者,您可以完全避免使用Prolog的比较运算符,只需说明

gt(X,Y,Z) :- Z is max(X,Y) .

或使用判别函数选择所需的值:

gt(X,Y,Z) :- D is sign(X-Y) + 1 , nth0(D,[Y,X,X],Z) .