miércoles, 23 de enero de 2008

Funciones Fibonacci y Cálculo de la Suma en Lenguaje Prolog

/*a) Escriba un predicado suma(N,R) que sea cierto cuando R sea la suma de los naturales desde el 1 hasta N. */

suma(1,1).
suma(N,R):- not(N=0),L is N-1,K is R-N,suma(L,K).

/*b) Escriba un predicado fibo(N,R) que sea cierto cuando R sea el enésimo elemento de la serie de Fibonacci. */

fibo(1,1).
fibo(2,1).
fibo(N,R):- not(N=0),L is N-1,H is N-2,fibo(L,T),fibo(H,S),R is T+S.