Python用while循环求阶乘
时间: 2023-11-16 19:16:26 浏览: 86
好的,以下是Python代码,使用while循环来计算阶乘:
```
n = int(input("请输入一个正整数:"))
factorial = 1
i = 1
while i <= n:
factorial *= i
i += 1
print("%d 的阶乘是:%d" % (n, factorial))
```
代码解释:
1. 首先,我们用 `input()` 函数获取用户输入的正整数,存储在变量 `n` 中。
2. 然后我们初始化变量 `factorial` 为1,用于存储阶乘的结果。
3. 变量 `i` 初始值为1,用于循环计算阶乘。
4. 在 while 循环中,我们使用 `factorial *= i` 语句来计算阶乘,即每次将 `i` 乘以 `factorial`,并将结果赋值给 `factorial`。
5. 循环条件为 `i <= n`,即当 `i` 小于等于 `n` 时,不断进行循环。
6. 最后,我们使用 `print()` 函数输出结果。
希望对你有帮助!
相关问题
python中用while循环求阶乘的和
可以通过以下代码使用while循环求阶乘的和:
```python
n = int(input("请输入一个正整数: "))
fact_sum = 0
i = 1
while i <= n:
fact = 1
j = 1
while j <= i:
fact *= j
j += 1
fact_sum += fact
i += 1
print("阶乘的和为:", fact_sum)
```
输入一个正整数n后,程序会使用while循环计算1到n的阶乘的和,并输出结果。
Pythonwhile循环求阶乘
在Python中,你可以使用`while`循环结合递归来计算阶乘。阶乘是一个数的所有小于及等于它的正整数相乘的结果。例如,5的阶乘(表示为5!)就是5 * 4 * 3 * 2 * 1。
下面是一个简单的示例,展示了如何使用`while`循环实现阶乘:
```python
def factorial(n):
if n == 0 or n == 1: # 阶乘的基本条件,0和1的阶乘都是1
return 1
else:
i = 1 # 初始化计数器i为1
while i <= n: # 当i小于或等于n时继续循环
i += 1 # i自增1
n -= 1 # 减少n直到变为1
return n # 返回最终结果
# 测试阶乘函数
number = int(input("请输入一个数字求其阶乘: "))
result = factorial(number)
print(f"{number} 的阶乘是: {result}")
```
在这个例子中,`while`循环会在每次迭代中将`i`加1,同时减少`n`,当`n`减到1时,跳出循环,返回`i`作为阶乘的结果。
阅读全文