基本上我正在處理一個更大的問題,但是如何返回一個列表從1到n
?我是新來的,有點困惑。另外,是否可以在函數調用中將其作爲參數傳遞?序言,從1到N返回列表
像check(newlist(1, N), [L | Rl]);
其中newlist
是一個函數調用返回1
和N
之間的名單?
對不起,如果我的術語關閉。這似乎是一個非常基本的問題,但我仍然在學習和理解Prolog的概念。
基本上我正在處理一個更大的問題,但是如何返回一個列表從1到n
?我是新來的,有點困惑。另外,是否可以在函數調用中將其作爲參數傳遞?序言,從1到N返回列表
像check(newlist(1, N), [L | Rl]);
其中newlist
是一個函數調用返回1
和N
之間的名單?
對不起,如果我的術語關閉。這似乎是一個非常基本的問題,但我仍然在學習和理解Prolog的概念。
在Prolog中,你並沒有真正具有返回值的函數。你有統一變量的謂詞。考慮到這一點,你會寫是這樣的:
range(1, N, ResultOfRange),
check(ResultOfRange, [L, Rl]).
雖這麼說,想想range
基本條件,然後找出你如何構建上做一個謂語產生的整個範圍數字。