python利用for和while求n!
时间: 2023-05-02 12:04:32 浏览: 106
可以使用for或while循环来求n的阶乘。以下是两种方法:
使用for循环:
n = 5
result = 1
for i in range(1, n+1):
result *= i
print(result)
输出结果为120,即5!的值。
使用while循环:
n = 5
result = 1
i = 1
while i <= n:
result *= i
i += 1
print(result)
同样输出结果为120。
相关问题
python写程序,输入整数n(n>=0),分别利用for循环和while循环求n!。其运行效果如下图所示。
在Python中,你可以使用for循环或while循环来计算阶乘。阶乘是一个正整数n的所有小于及等于它的正整数的积,记作n!。以下是两种方法的示例:
**使用for循环计算阶乘:**
```python
def factorial_for(n):
result = 1
for i in range(1, n+1):
result *= i
return result
n = int(input("请输入一个非负整数:"))
print(f"{n} 的阶乘是:{factorial_for(n)}")
```
**使用while循环计算阶乘:**
```python
def factorial_while(n):
result = 1
i = 1
while i <= n:
result *= i
i += 1
return result
n = int(input("请输入一个非负整数:"))
print(f"{n} 的阶乘是:{factorial_while(n)}")
```
这两种方法都可以得到预期的结果,当你运行这个程序并输入一个非负整数,它会输出对应的阶乘值。
编写程序,输入整数 n(n>=0),分别利用 for 循环和 while 循环求 n!
当你需要计算一个整数 `n` 的阶乘 (n!),你可以使用循环结构来迭代从1到`n`的所有整数并相乘。这里我会提供两个版本的代码示例,一个是用 `for` 循环,另一个是用 `while` 循环。
**使用 for 循环的例子:**
```python
def factorial_with_for(n):
if n == 0 or n == 1:
return 1
else:
result = 1
for i in range(1, n + 1):
result *= i
return result
n = int(input("请输入一个非负整数:"))
factorial = factorial_with_for(n)
print(f"{n}! = {factorial}")
```
**使用 while 循环的例子:**
```python
def factorial_with_while(n):
if n == 0 or n == 1:
return 1
else:
result = 1
i = 1
while i <= n:
result *= i
i += 1
return result
n = int(input("请输入一个非负整数:"))
factorial = factorial_with_while(n)
print(f"{n}! = {factorial}")
```
在这两个例子中,如果输入的是0或1,阶乘结果为1;否则,循环遍历从1到n的所有整数并将它们逐个乘起来得到阶乘值。
阅读全文