python中用while的方法算正整数n的阶乘
时间: 2023-06-07 09:07:29 浏览: 48
好的,让我回答您的问题。以下是 python 中使用 while 循环计算正整数 n 的阶乘的代码:
```python
n = int(input("请输入一个正整数: "))
factorial = 1
if n < 0:
print("负数没有阶乘")
elif n == 0:
print("0 的阶乘为 1")
else:
while(n > 0):
factorial *= n
n -= 1
print(n, "的阶乘为", factorial)
```
您可以通过输入正整数 n 来测试该代码。希望这可以帮助到您!
相关问题
在Python中用while循环结构执行n的阶乘
当然可以,下面是一个使用 while 循环计算 n 的阶乘的 Python 代码:
```python
def factorial(n):
result = 1
i = 1
while i <= n:
result *= i
i += 1
return result
n = 5
result = factorial(n)
print(result)
```
这段代码与使用 for 循环的代码类似,只是使用了 while 循环来代替了 for 循环。在 while 循环中,我们使用一个变量 i 来迭代计算阶乘,每次乘以当前的 i 值,并将 i 的值加 1,直到 i 大于 n 为止。然后,我们返回计算得到的阶乘结果。最后,我们使用 n = 5 来调用这个函数,计算 5 的阶乘,并将结果存储在 result 变量中。最后,我们输出 result 的值,即 5 的阶乘的结果 120。
while计算正整数n的阶乘
,可以使用循环语句来实现,请问使用while语句如何计算n的阶乘?
答:使用while语句计算正整数n的阶乘可以按照以下步骤:首先初始化一个变量i为1,用于循环计算;还可以初始化一个变量result为1,用于保存阶乘结果。接下来,使用while循环来进行计算,判断条件为i<=n,即当i小于等于n时进行循环。在循环体内,每次将result乘以i,然后将i加1,最后返回result即可。代码实现如下:
```python
def factorial(n):
i = 1
result = 1
while i <= n:
result *= i
i += 1
return result
```
例如,计算5的阶乘,即调用factorial(5),输出结果为120。