home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / 1988 / 01 / prolog / fak.pro < prev    next >
Encoding:
Text File  |  1987-11-03  |  1.7 KB  |  43 lines

  1. module fak.
  2.  
  3. /*$eject*/
  4. body.
  5.  
  6. fak1(0,1) .
  7. fak1(N,RES) :- 
  8.      N1 is N-1, fak1(N1,RES1), RES is RES1*N .
  9.  
  10. fak2(1,RES,RES) .
  11. fak2(N,TEMP,RES) :- 
  12.      NTEMP is TEMP*N, N1 is N-1, fak2(N1,NTEMP,RES) .
  13.  
  14. test1 :- 
  15.      fak1(7,RES1), fak1(7,RES2), fak1(7,RES3), fak1(7,RES4), 
  16.        fak1(7,RES5), fak1(7,RES6), fak1(7,RES7), fak1(7,RES8), 
  17.        fak1(7,RES9), fak1(7,RES10), fak1(7,RES11), fak1(7,RES12), 
  18.        fak1(7,RES13), fak1(7,RES14), fak1(7,RES15), fak1(7,RES16), 
  19.        fak1(7,RES17), fak1(7,RES18), fak1(7,RES19), fak1(7,RES20), 
  20.        fak1(7,RES21), fak1(7,RES22), fak1(7,RES23), fak1(7,RES24), 
  21.        fak1(7,RES25), fak1(7,RES26), fak1(7,RES27), fak1(7,RES28), 
  22.        fak1(7,RES29), fak1(7,RES30), fak1(7,RES31), fak1(7,RES32), 
  23.        fak1(7,RES33), fak1(7,RES34), fak1(7,RES35), fak1(7,RES36), 
  24.        fak1(7,RES37), fak1(7,RES38), fak1(7,RES39), fak1(7,RES40) .
  25.  
  26. test2 :- 
  27.      fak2(7,1,RES1), fak2(7,1,RES2), fak2(7,1,RES3), 
  28.        fak2(7,1,RES4), fak2(7,1,RES5), fak2(7,1,RES6), 
  29.        fak2(7,1,RES7), fak2(7,1,RES8), fak2(7,1,RES9), 
  30.        fak2(7,1,RES10), fak2(7,1,RES11), fak2(7,1,RES12), 
  31.        fak2(7,1,RES13), fak2(7,1,RES14), fak2(7,1,RES15), 
  32.        fak2(7,1,RES16), fak2(7,1,RES17), fak2(7,1,RES18), 
  33.        fak2(7,1,RES19), fak2(7,1,RES20), fak2(7,1,RES21), 
  34.        fak2(7,1,RES22), fak2(7,1,RES23), fak2(7,1,RES24), 
  35.        fak2(7,1,RES25), fak2(7,1,RES26), fak2(7,1,RES27), 
  36.        fak2(7,1,RES28), fak2(7,1,RES29), fak2(7,1,RES30), 
  37.        fak2(7,1,RES31), fak2(7,1,RES32), fak2(7,1,RES33), 
  38.        fak2(7,1,RES34), fak2(7,1,RES35), fak2(7,1,RES36), 
  39.        fak2(7,1,RES37), fak2(7,1,RES38), fak2(7,1,RES39), 
  40.        fak2(7,1,RES40) .
  41.  
  42. endmod /* fak */  .
  43.