home *** CD-ROM | disk | FTP | other *** search
Prolog Source | 1990-03-26 | 439 b | 19 lines |
- /*
- Copyright (c) 1986, 90 by Prolog Development Center
- */
-
- predicates
- factorial(integer,real)
- factorial(integer, real, integer, real)
-
- /* Numbers likely to exceed 32767 are declared as reals. */
-
- clauses
- factorial(N,FactN):-
- factorial(N,FactN,1,1).
-
- factorial(N, FactN, N, FactN):- !.
- factorial(N, FactN, I, P):-
- NewI = I+1,
- NewP = P*NewI,
- factorial(N, FactN, NewI, NewP).