Você está na página 1de 2

Resoluo de Fatorial

A seguir vemos uma possvel resoluo de fatorial em Prolog: fatorial(0,1). fatorial(N,F) :N1 is N - 1, fatorial(N1,F1), F is N * F1. Na primeira linha est definida uma funo que retornar um resultado verdadeiro, nesta linha definimos que o fatorial do nmero 0 sempre ser 1. Para encontrarmos o fatorial de outros nmeros temos a funo fatorial aberta a retornar um valor (o parmetro F).

Resoluo de Fibonacci
Agora mostraremos uma possvel resoluo da sequncia de Fibonacci em Prolog: fib(0,0). fib(1,1). fib(X,Y) :X>1, X1 is X-1, X2 is X-2, fib(X1,Z), fib(X2,W), Y is W+Z. Na primeira linha definimos que na posio 0 da sequncia encontramos o valor 0, na segunda linha definimos que na posio 1 o valor encontrado 1. Depois montamos a funo para encontrarmos o valor para qualquer posio da sequncia, onde dizemos que para encontrar o valor na posio X basta fazer a soma de X-1 com X-2.

Matching de Aridade 4
Exemplo de matching de aridade 4: ?- a(B,c,D,e) = a(b,C,d,E). B=b C=c D=d E=e No matching o operador '=' tenta fazer com que X 'case' com Y. (?- X=Y.)

http://silveiraneto.net

Você também pode gostar