通过函数的递归调用计算阶乘
时间: 2023-11-29 14:03:46 浏览: 24
好的,可以通过以下 Python 代码实现阶乘的递归计算:
```python
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1)
```
这个函数接受一个整数参数 `n`,如果 `n` 等于 0,则返回 1,否则返回 `n` 乘以 `factorial(n-1)` 的结果。
例如,调用 `factorial(5)` 会返回 120,因为 5 的阶乘是 5*4*3*2*1=120。
相关问题
python递归函数计算阶乘和
以下是Python递归函数计算阶乘和的代码示例:
```python
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1)
def sum_of_factorial(n):
if n == 0:
return 1
else:
return factorial(n) + sum_of_factorial(n-1)
print(sum_of_factorial(5)) # 输出结果为 153
```
在上面的代码中,`factorial` 函数用于计算阶乘,`sum_of_factorial` 函数则是通过递归调用 `factorial` 函数来计算阶乘和。当 `n` 为 0 时,阶乘和即为 1;否则,阶乘和等于当前阶乘与前面所有阶乘的和。最后,我们调用 `sum_of_factorial` 函数并将参数设为 5,输出结果为 153。
递归函数计算n的阶乘
下面是一个计算n的阶乘的递归函数:
```python
def factorial(n):
if n == 1:
return 1
else:
return n * factorial(n-1)
```
该函数首先检查 `n` 是否等于 1,如果是,则直接返回 1。否则,它会递归调用自己,计算 `(n-1)` 的阶乘,并将结果乘以 `n`,最终返回结果。
请注意,递归函数必须有一个结束条件,以避免无限递归。在这个例子中,结束条件是 `n == 1`。