跳至内容

Prolog/变量

来自维基教科书,面向开放世界的开放书籍

PROLOG 变量可代表任何内容;数字、名称、结构、数组,以及与之复杂到如已知宇宙一样的内容。PROLOG 程序通过限制变量来工作,直至变量获得特定的值;然后告知您这些值是什么。一个简单的程序可能是

  X is 3+2.

当您运行它时,结果将是

  X=5
  Yes.

程序可能不会继续约束变量以达到确切值,所以您可能得到

  equal(A,A).   % Explains that things are equal to themselves
  X is 3+2, equal(f(X,Z),Y).
  X=5
  Y=f(5,_)
  Yes

其中“_”表示您有一个剩余变量作为该解决方案的一部分。

您还可以获得多个变量值的“是”结果;这被称为“非确定性”,并且是正常的。如果变量的任何值都不会得到解决方案,PROLOG 将显示“否”。


prev: 递归规则 next: 列表

华夏公益教科书