python用fact对正整数n求阶乘
时间: 2024-05-14 10:17:42 浏览: 10
可以使用递归函数来求解正整数n的阶乘,代码如下:
```python
def fact(n):
if n == 1:
return 1
else:
return n * fact(n-1)
```
其中,当n等于1时,直接返回1,否则递归调用函数fact(n-1)来求解n-1的阶乘,并将其乘以n,即可得到n的阶乘。
使用这个函数来求解一个正整数n的阶乘可以这样调用:
```python
n = 5
result = fact(n)
print(result) # 输出 120
```
这里以求解5的阶乘为例,调用fact(5)即可得到120。
相关问题
编写Python程序while循环,计算任意正整数n的阶乘。
好的,我可以回答这个问题。以下是计算任意正整数n的阶乘的Python程序 while 循环:
```
n = int(input("请输入一个正整数:"))
fact = 1
i = 1
while i <= n:
fact *= i
i += 1
print("%d 的阶乘是 %d" % (n, fact))
```
这个程序中,我们先从用户输入获取一个正整数n,然后使用 while 循环来计算 n 的阶乘,最后输出结果。
用Python求连续整数阶乘的和的代码
以下是用Python求连续整数阶乘的和的代码:
```python
def factorial_sum(n):
result = 0
fact = 1
for i in range(1, n+1):
fact *= i
result += fact
return result
n = int(input("请输入一个正整数:"))
print("连续整数阶乘的和为:", factorial_sum(n))
```
运行程序后,输入一个正整数n,程序将计算出1! + 2! + 3! + ... + n!的值并输出。