题目描述:
有如下分数序列
2 1 , 3 2 , 5 3 , 8 5 , 13 8 , 21 13 , ⋅ ⋅ ⋅ \frac{2}{1},\frac{3}{2},\frac{5}{3},\frac{8}{5},\frac{13}{8},\frac{21}{13},··· 12,23,35,58,813,1321,⋅⋅⋅
求出次数列的前20项之和。
请将结果的数据类型定义为double类型。
输入:
无
输出:
小数点后保留6位小数,末尾输出换行。
样例输入:
无
样例输出:
32.660261
实现代码:
#include<cstdio>
double Fibonacci(int n) {
if(n == 1) {
return 1;
}
if(n == 2) {
return 2;
}
return Fibonacci(n - 1) + Fibonacci(n - 2);
}
int main() {
double sum = 0;
for(int i = 1; i <= 20; i++) {
sum += (Fibonacci(i + 1) / Fibonacci(i));
}
printf("%.6f", sum);
}