编写一个程序,有一分数序列,2/1,3/2,5/3+…+21/13,求出前20项和
时间: 2023-11-18 17:16:29 浏览: 32
这道题是一个简单的数学问题,需要求出分数序列的前20项和。以下是Python的代码实现:
```python
# 初始化分子分母
numerator = 2
denominator = 1
# 初始化和
sum = 0
# 计算前20项和
for i in range(20):
sum += numerator / denominator
# 更新分子分母
temp = numerator
numerator = numerator + denominator
denominator = temp
print(sum)
```
输出结果为:
```
32.66026079864164
```
因为是浮点数运算,所以输出结果可能会有精度误差,但是结果应该在32左右。
相关问题
编写一个C语言程序,求分数序列:1/2+2/3+3/5+5/8+8/13…的前20项和
以下是一个求解分数序列前20项和的C语言程序:
```c
#include <stdio.h>
int main() {
int i;
double a = 1, b = 2, sum = 0, tmp;
for (i = 1; i <= 20; i++) {
sum += b / a;
tmp = a + b;
a = b;
b = tmp;
}
printf("分数序列前20项和为:%.2f\n", sum);
return 0;
}
```
程序中使用了两个变量a和b来表示分子和分母,初始值分别为1和2。在循环中,计算当前项的值并加到sum变量中,然后更新a和b的值,使它们分别变为上一个分数的分母和分子之和。循环20次后,输出sum的值即为所求的分数序列前20项的和。
编写一个c语言程序,求下列分数序列的前20项之和:2/1+3/2+5/3+8/5+13/8+
```
#include <stdio.h>
int main() {
int i;
double a = 2, b = 1, c, sum = 0;
for (i = 1; i <= 20; i++) {
sum += a / b;
c = a;
a = a + b;
b = c;
}
printf("前20项之和为:%.2f\n", sum);
return 0;
}
```
运行结果:
```
前20项之和为:32.66
```