python递归求阶乘和
  MJ7ouKm6EAhc 2023年11月02日 87 0

一些基本概念介绍:
阶乘:是指从1到n的连续自然数相乘的积。负数没有阶乘。

递归:函数作为一种代码封装,除了被其他程序正常调用外,还可以被函数内部代码调用。函数定义中调用函数自身的方式称为递归。

递归实现的两个关键点:
(1)存在一个或多个基例,基例不需要再次递归,它是确定的表达式。否则,无限递归将耗尽计算资源!
(2)所有递归链要以一个或多个基例结尾。

 

python递归求阶乘和的代码实现:

 1 # 本程序:根据用户输入的整数n,计算并输出n的阶乘和
 2 # 递归实现阶乘
 3 def factorial(num):
 4     if num == 1:# 给出了num为1时的基例,当num为1时该函数不再递归,返回1(即1的阶乘)
 5         return 1
 6     else:
 7         return num * factorial(num-1)# 递归
 8         
 9 # 递归实现阶乘和。举例,3的阶乘和=3!+2!+1!
10 def facSum(num):
11     if num == 1:# 给出了num为1时的基例,当num为1时该函数不再递归,返回1(即1的阶乘和)
12         return 1
13     else:
14         return factorial(num) + facSum(num-1)# 递归
15 n = eval(input("请输入一个整数: "))
16 print(facSum(abs(int(n))))

 

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  2Fnpj8K6xSCR   2024年05月17日   93   0   0 Python
  xKQN3Agd2ZMK   2024年05月17日   67   0   0 Python
  fwjWaDlWXE4h   2024年05月17日   35   0   0 Python
  YpHJ7ITmccOD   2024年05月17日   38   0   0 Python
MJ7ouKm6EAhc