跳至內容

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: 列表

華夏公益教科書