“
python,def factorial(n):, if n == 0:, return 1, else:, return n * factorial(n-1),
“问题描述
给定一个正整数n,求n的阶乘,阶乘表示从1乘到n的所有正整数的乘积,即n! = 1 * 2 * 3 * … * n。
递归求解
递归是一种解决问题的方法,它将问题分解为更小的子问题,然后递归地解决这些子问题,直到达到基本情况,对于求阶乘问题,我们可以将n!分解为(n1)! * n,当n=1时,1! = 1。
Python代码实现
def factorial(n): # 基本情况:n=1时,返回1 if n == 1: return 1 # 递归情况:n! = (n1)! * n else: return n * factorial(n 1) 测试代码 n = 5 result = factorial(n) print(f"{n}的阶乘是:{result}")
单元表格
输入 | 输出 | 解释 |
n = 1 | 1 | 基本情况 |
n = 2 | 2 | 2 = 2 * 1 |
n = 3 | 6 | 3 = 2 * 2 * 1 |
n = 4 | 24 | 4 = 3 * 2 * 2 * 1 |
n = 5 | 120 | 5 = 4 * 3 * 2 * 1 |
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/649276.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复