2013-04-16 46 views

回答

1

因爲你有什麼存在是一個事實數據庫查詢,如果你想要的是數學計算。比較:

?- atan2(1,3). 
ERROR: toplevel: Undefined procedure: atan2/2 (DWIM could not correct goal) 

要這樣:

?- X is atan2(1,3). 
X = 0.3217505543966422. 

後一種形式,使用is/2需要觸發數學評價。

在更一般的筆記,數學環境之外,Prolog的功能不「返回」,他們統一的參數,這樣的聲明,如atan2(1,3)沒有變量應該只淨您truefalse,無限循環或其他錯誤。