python中用while的方法算正整数n的阶乘
时间: 2023-06-07 19:07:29 浏览: 89
好的,让我回答您的问题。以下是 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。
使用python语言中的while函数求正整数的阶乘
在Python中,你可以使用`while`循环结合递归的方式计算正整数的阶乘。阶乘是指一个非负整数n与小于及等于它的所有正整数的积,记作n!。下面是一个简单的例子:
```python
def factorial(n):
if n == 0 or n == 1: # 阶乘的基本情况,0和1的阶乘都是1
return 1
else:
result = 1 # 初始化结果为1
i = 1 # 初始化计数器
while i <= n: # 当i小于等于n时,继续循环
result *= i # 将当前的i值乘到结果上
i += 1 # 更新i为下一个数
return result # 返回计算得到的阶乘结果
# 测试函数
number = int(input("请输入一个正整数: "))
print(f"{number}的阶乘是: {factorial(number)}")
```
当你运行这个程序并输入一个正整数,它会返回该数的阶乘。
阅读全文