我試圖讓我自己的斐波那契序列實現。這是我的:在序言中的斐波那契實現
fibo2(N, F) :-
fibo2(0, 1, 0, N, F).
fibo2(N-F, F, N-1, N, F).
fibo2(P, S, C, N, F) :-
C < N,
T is S,
S1 is P + S,
C1 is C + 1,
fibo2(T, S1, C1, N, F).
我知道還有其他的實現,但我不知道爲什麼這不工作。當我做了跟蹤與fibo2(3, 2)
我覺得這個調用應該拋出真:
fibo2(1, 2, 2, 3, 2) ? creep
但它返回false ...一些幫助將不勝感激
你應該在代碼中加入簡短的註釋,解釋每個變量應該是什麼,以及每個謂詞的目的是什麼。至少''fibo2(N,F): - %F是第N個斐波納契數,索引基1「'應該在那裏。 – 2013-04-29 15:34:10