Python求N的阶乘 (N!=n*(n-1)*...*3*2*1)
时间: 2024-04-23 12:18:38 浏览: 15
Python中可以使用循环或递归的方式来求N的阶乘。下面是两种方法的示例代码:
1. 使用循环:
```python
def factorial(n):
result = 1
for i in range(1, n+1):
result *= i
return result
n = 5
print(factorial(n))
```
2. 使用递归:
```python
def factorial(n):
if n == 0 or n == 1:
return 1
else:
return n * factorial(n-1)
n = 5
print(factorial(n))
```
相关问题
输入一个正整数n,求出n的阶乘,n! = 1*2*3*....*n
以下是一个求正整数n的阶乘的Python代码示例:
```python
def factorial_fun(n):
if n == 1:
return 1
return n * factorial_fun(n-1)
integer = int(input())
print(factorial_fun(integer))
```
这段代码定义了一个递归函数`factorial_fun`,用于计算正整数n的阶乘。当n等于1时,函数返回1;否则,函数返回n乘以`factorial_fun(n-1)`的结果。然后,通过`int(input())`获取用户输入的正整数n,并将其传递给`factorial_fun`函数进行计算,最后将结果打印出来。
利用递归算法计算正整数n的阶乘。(n!=1*2*3...*n)
好的,以下是 Python 代码实现:
```python
def factorial(n):
if n == 1:
return 1
else:
return n * factorial(n - 1)
```
函数 `factorial(n)` 是一个递归函数,用于计算正整数 n 的阶乘。当 n 等于 1 时,递归结束,直接返回 1。否则,函数会调用自身计算 n-1 的阶乘,并将结果乘以 n,最终返回 n 的阶乘。
例如,计算 5 的阶乘,可以调用 `factorial(5)` 函数,该函数会依次调用 `factorial(4)`、`factorial(3)`、`factorial(2)` 和 `factorial(1)` 函数,最终返回 5 * 4 * 3 * 2 * 1 = 120。
```python
print(factorial(5)) # 输出:120
```