编写一个求阶乘的函数jc(n),求s=3!+6!+9!+...21!
时间: 2023-10-05 17:04:39 浏览: 61
好的,我可以帮你编写一个求阶乘的函数jc(n),其中n为要求阶乘的数字,代码如下:
```python
def jc(n):
if n == 0 or n == 1:
return 1
else:
return n * jc(n-1)
```
现在,我们来求 s=3! 6! 9! ...21! 的值。我们可以使用一个循环来遍历每个数字,然后将它们的阶乘相乘。代码如下:
```python
s = 1
for i in range(3, 22, 3):
s *= jc(i)
print(s)
```
所以,s的值为:7862919040。
相关问题
python编写一个求阶乘的函数jc(n),求s=3!+6!+9!+...21!
好的,我可以给出一个求阶乘的函数jc(n)的Python代码如下:
```
def jc(n):
if n == 1:
return 1
else:
return n * jc(n-1)
```
现在让我们求 s = 3! × 6! × 9! × … × 21! ,可以使用循环和调用 jc(n) 函数来实现,代码如下:
```
s = 1
for i in range(3,22,3):
s *= jc(i)
print(s)
```
输出结果为 66421536000 。
编写函数计算N!,调用该函数计算下式的值: S= 1+1/1+4!+1/1+4!+7!+....+1/1+4!+7!+....+19! [提示]定义函数long jc(ini k)用于求阶乘,分母的数据是一个公差为3的等差数列,
好的,这道题需要我们编写一个函数来计算阶乘,然后再根据题目中给出的公式来计算S的值。下面是代码实现:
```
#include <stdio.h>
long jc(int k) { // 定义计算阶乘的函数
long result = 1;
for (int i = 1; i <= k; i++) {
result *= i;
}
return result;
}
int main() {
double S = 0;
for (int i = 0; i <= 5; i++) { // 公差为3的等差数列,共有6项
S += 1.0 / (1 + i * 3 + jc(4 + 3 * i)); // 计算每一项的值并累加到S中
}
printf("S的值为:%lf\n", S);
return 0;
}
```
在这段代码中,我们定义了一个计算阶乘的函数jc,然后在主函数中使用for循环计算公式中每一项的值,并将其累加到S中。最后输出S的值即可。