>>259
参考までにPrologという言語での定義を書きます。再帰で
定義する場合は参考になります。
階乗(M,0,1).
階乗(M,N,X) :- N2 is N-1, 階乗(M,N2,Y), X is M * Y.