使用循环结构计算输出的数据n的阶乘。
时间: 2024-10-16 21:12:21 浏览: 35
当你想用Python计算一个数n的阶乘时,你可以使用for循环或while循环结合递归的方式来实现。这里我给你提供两种方法:
**方法一:使用for循环(迭代法)**
```python
def factorial(n):
result = 1
for i in range(1, n + 1):
result *= i
return result
# 测试
n = int(input("请输入一个非负整数:"))
print(f"{n}的阶乘是:{factorial(n)}")
```
**方法二:使用while循环(迭代法)**
```python
def factorial(n):
result = 1
i = 1
while i <= n:
result *= i
i += 1
return result
# 测试
n = int(input("请输入一个非负整数:"))
print(f"{n}的阶乘是:{factorial(n)}")
```
**方法三:使用递归(如果你了解递归)**
```python
def factorial_recursive(n):
if n == 0 or n == 1:
return 1
else:
return n * factorial_recursive(n - 1)
# 测试
n = int(input("请输入一个非负整数:"))
print(f"{n}的阶乘是:{factorial_recursive(n)}")
```
在这些示例中,你需要确保用户输入的是非负整数,因为阶乘在数学上只定义为正整数的乘积。
阅读全文