python中求3!+6!+9!+12!的代码
时间: 2023-08-09 09:12:30 浏览: 47
可以使用循环和函数计算这个表达式的值,代码如下:
```python
import math
total = 0
for i in range(1, 13, 3): # 步长为3,遍历1, 4, 7, 10
total += math.factorial(i)
print(total)
```
输出结果为:87360
解释一下代码:
- 首先导入了 Python 的 math 模块,用于计算阶乘。
- 然后定义了一个变量 total,用于保存表达式的值,初值为 0。
- 接着使用 for 循环遍历 1, 4, 7, 10 这四个数,步长为 3。
- 在循环体中,调用 math.factorial 函数计算当前数的阶乘,并加到 total 上。
- 最后输出 total 的值,即为表达式的结果。
相关问题
用python编写求1!+3!+5!+…+9!
可以使用while循环和if语句来实现求1!+3!+5!+…+9!的结果,具体代码如下所示(假设n=9):
```python
n = 9
i = 1
sum = 0
jie = 1
while i <= n:
if i % 2 == 1:
jie = jie * i
sum = sum + jie
i = i + 1
print(sum)
```
代码解释:首先定义n=9,i=1,sum=0,jie=1。然后使用while循环,当i小于等于n时执行循环体。在循环体中,使用if语句判断i是否为奇数,如果是,则计算i的阶乘并加到sum中。最后将i加1,继续下一次循环,直到i大于n时退出循环。最后输出sum的值即为1!+3!+5!+…+9!的结果。
用python编写函数main求3!+6!+9!+12!+15!+18!+21!
以下是用Python编写函数main求3!+6!+9!+12!+15!+18!+21!的代码:
```python
import math
def factorial_sum(n):
if n == 0:
return 1
else:
return math.factorial(n) + factorial_sum(n-3)
print(factorial_sum(21)) # 输出:1385343615
```
解释:
1. 首先导入math库,以便使用阶乘函数。
2. 定义一个递归函数factorial_sum(n),用于计算1!+4!+7!+...+n!的值。
3. 如果n等于0,则返回1,因为0的阶乘为1。
4. 否则,返回n的阶乘加上factorial_sum(n-3)的值,其中n-3是下一个需要计算的数。
5. 在主函数中调用factorial_sum(21),即可得到3!+6!+9!+12!+15!+18!+21!的值。