l利用递归来实现。1、当n=0时,n!=1当n不等于0时,n!=n*(n-1)!
2、定义一个函数f(n)来实现递归:
3、例如求5的阶乘,m= f(5),print(m),运行结果为120。
具体代码如图:
求n的阶乘
本题要求编写程序,计算N的阶乘。
输入格式:
输入在一行中给出一个正整数 N。
输出格式:
在一行中按照“product = F”的格式输出阶乘的值F,请注意等号的左右各有一个空格。题目保证计算结果不超过双精度范围。
输入样例:
输出样例:
def factorial(n):
result = n
for i in range(1,n):
result *= i
return result
def main():
print factorial(4)
if __name__ == '__main__':
main()
阶乘介绍:
基斯顿·卡曼(Christian Kramp,1760~1826)于 1808 年发明的运算符号,是数学术语。
一个正整数的阶乘(factorial)是所有小于及等于该数的正整数的积,并且0的阶乘为1。自然数n的阶乘写作n!。1808年,基斯顿·卡曼引进这个表示法。
亦即n!=1×2×3×...×(n-1)×n。阶乘亦可以递归方式定义:0!=1,n!=(n-1)!×n。