作者: 機械伯爵
日時: 2009/5/9(23:39)
 Prologは、なんどもやって挫折しているので、下のコードも、
私の知識では、理解するのがやっとでした。

 まぁ、自分で書いたのでないのを書くのもどーかな、とも思った
のですが、一応有名&独特言語なので…… 

■再帰版

fact(0, 1).
fact(X, Sum) :-
  X > 0,
  X1 is X - 1,
  fact(X1, Sum1),
  Sum is X * S1um1. 

参照元『M.Hiroi's Home Page』
http://www.geocities.jp/m_hiroi/prolog/prolog02.html
(SWI-Prologで動作確認)