このディレクトリの索引
http://hibari.2ch.net/test/read.cgi/tech/1311089619/658
#  助けてください。5つあります。 
#  明日提出期限です。 
#   
#  入力した数の階乗を計算するプログラムを作れ。 
#     nの階乗とは、n!と書いて、次のような計算をするものである。 
#        n! = n × (n – 1) × (n – 2) × … × 2 × 1 
#   
#  ヒント)関数 fact(n)を n!を計算するプログラムとする。 
#  この時、 
#   n! = n × (n – 1)! 
#  だから、fact(n) を計算するには、fact(n-1)を計算してから、nをかければ良い。 
#   
#   

階乗(0,1) :- !.
階乗(1,1) :- !.
階乗(N,X) :-
        N2 is N - 1,
        階乗(N2,Y),
        X is N * Y.