这是一个斐波那契数列:2/1,3/2,5/3,8/5,13/8,21/13...。要求输出这个数列的前20项之和。写出C语言代码
时间: 2023-12-13 22:51:58 浏览: 29
以下是C语言代码实现:
```c
#include <stdio.h>
int main()
{
float a = 2, b = 1, sum = 0, temp;
int i;
for (i = 1; i <= 20; i++)
{
sum += a / b;
temp = a;
a = a + b;
b = temp;
}
printf("前20项之和为:%.2f", sum);
return 0;
}
```
该程序使用两个变量 a 和 b 来存储斐波那契数列中的相邻两项,使用 sum 变量来计算前 20 项之和。在 for 循环中,先将 a/b 的值加到 sum 中,然后将 a 和 b 分别更新为下一项和当前项。最后输出 sum 的值即为前 20 项之和。
相关问题
有一数列:2/1,3/2
,5/3,8/5,13/8,21/13,...
这个数列是斐波那契数列的比值。斐波那契数列是指从0和1开始,后续每一项都是前两项的和。所以,该数列的前两项是2/1和3/2,接下来的项是前两项的和,即:
5/3 = 2/1 + 3/2
8/5 = 3/2 + 5/3
13/8 = 5/3 + 8/5
21/13 = 8/5 + 13/8
...
这个数列的极限是黄金比例,即(1+√5)/2或约等于1.618。黄金比例在自然界中广泛存在,也是许多艺术和设计领域中的重要比例。
用python求出数列:2/1 3/2 5/3 8/5 13/8的前n项和
以下是用 Python 求出数列 2/1 3/2 5/3 8/5 13/8 的前 n 项和的代码:
```python
def fibonacci_sum(n):
a, b = 2, 1
total = 2/1
for i in range(2, n+1):
a, b = a+b, a
total += a/b
return total
```
你可以调用这个函数来求出前 n 项和,比如:
```python
print(fibonacci_sum(5)) # 输出 7.283333333333333
```
注意,这个数列其实是斐波那契数列的一种变形,因此我们可以用斐波那契数列的递推公式来计算每一项的值。