题目:求1+2!+3!+...+20!的和。
程序分析:此程序只是把累加变成了累乘。
代码:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
sum = 0
def fact(n):
#阶乘
if n == 1:
return 1
else:
return n*fact(n-1)
n = int(raw_input('输入数字:'))
for i in range(1, n+1):
a = fact(i)
sum += a
print'所有阶乘之和为:', sum
输出:
输入数字:20
所有阶乘之和为: 2561327494111820313