另外你可以去查查数学里对阶乘的定义。
一般来说有两种,一个就是一路乘过来的,写着也麻烦,用着也麻烦,证明起问题来也麻烦。
另一个就是递归定义的:
n! = n * (n-1)!
特别的,规定:
0! = 1! = 1。
这个程序基本就是用了一下这个定义而已。楼主现在是上高中吗?是的话,应该学过。
还有就是其它学过高数的人可能听过大伽马函数(Γ(x)),它使得非自然数(就是任何实数)也能做“阶乘”运算。
[ 本帖最后由 pangding 于 2011-8-2 20:12 编辑 ]
一般来说有两种,一个就是一路乘过来的,写着也麻烦,用着也麻烦,证明起问题来也麻烦。
另一个就是递归定义的:
n! = n * (n-1)!
特别的,规定:
0! = 1! = 1。
这个程序基本就是用了一下这个定义而已。楼主现在是上高中吗?是的话,应该学过。
还有就是其它学过高数的人可能听过大伽马函数(Γ(x)),它使得非自然数(就是任何实数)也能做“阶乘”运算。
[ 本帖最后由 pangding 于 2011-8-2 20:12 编辑 ]