python札记54——Python练习题2

浏览: 1233

题目

阶乘求和:1!+2!+....+20!如何实现?主要讲解4种方式:

  • for循环
  • while循环
  • 函数嵌套
  • for+函数

for

# 两层for循环
sum = 0 # 定义初始值
for i in range(1, 21):
origin = 1 # 单个阶乘的初始值
for j in range(1, i+1):
origin *= j # 单个数的阶乘
sum += origin # 累加求和
print(sum)

while

number = 1   # 单个阶乘的初始值
sum = 0
i = 1 # 控制次数

while 20 >= i: # 控制循环的持续,直到20停止
number *= i # 单个阶乘
sum += number
i += 1
print(sum)

函数嵌套

def digui(n):  # 定义一个单个数的阶乘的递归函数
if n==1:
return 1
else:
return n * digui(n-1)

def jiecheng(digui, n): # 传入上面的递归函数作为参数之一
sum = 0
for i in range(1, n):
sum += digui(i)
return sum
def jiecheng(digui, n):
def digui(n):
if n==1:
return 1
else:
return n * digui(n-1)
sum = 0
for i in range(1, n):
sum += digui(i)
return sum

for+函数嵌套

# 递归函数实现
def digui(n):
if n==1:
return 1
else:
return n * digui(n-1) # 实现递归

sum = 0
for i in range(1, 21):
sum = sum + digui(i) # for循环中调用递归函数
print(sum)
推荐 0
本文由 皮大大 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册