level 1
fib(0,0).
fib(1,1).
fib(X,Y):-X1 is X-1,X2 is X-2,fib(X1,Y1),fib(X2,Y2),Y = Y1+Y2.
就是 斐波那契数列,0112358......
前一个参数是代表数列里第几个,后一个参数是这个数是多少.
像fib(2,1)可以返回true, 但fib(2,2)这类不在数列里的会返回溢出,有什么办法让他返回false么?
2013年11月24日 05点11分
1
level 7
plus(X,[],X).
plus(X,[[]|Y],[[]|Z]):-plus(X,Y,Z).
fibc([],[]).
fibc([[]],[[]]).
fibc([[],[]|X],Y):-fibc([[]|X],Y1),fibc(X,Y2),plus(Y1,Y2,Y).
2014年03月05日 13点03分
3
回复 真实之魇 :不懂。。应该没问题吧
2014年03月06日 10点03分