File: fibonacci.pl

package info (click to toggle)
yap 6.2.2-6
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 33,716 kB
  • ctags: 28,168
  • sloc: ansic: 227,323; perl: 100,869; sh: 6,721; java: 5,165; makefile: 3,502; cpp: 1,401; python: 1,163; tcl: 352; xml: 77; awk: 9
file content (9 lines) | stat: -rw-r--r-- 235 bytes parent folder | download
1
2
3
4
5
6
7
8
9
/* fibfib(N,R1,R2) : R1=fibonacci(N-1) && R2=fibonacci(N) */
fibfib(1,1,1).
fibfib(N,R1,R2) :-
	N > 1, M is N-1,
	fibfib(M,S1,S2),
	R1 is S2, R2 is S1+S2.

/* fib(N,R) : R=fibonacci(N) */
fib(N,R) :- N>0, fibfib(N,R1,R), write(R), nl.