分子分母遞推:
a₁=2, b₁=1
aₙ = aₙ₋₁ + bₙ₋₁
bₙ = aₙ₋₁
即斐波那契數列變體:2/1, 3/2, 5/3, 8/5, 13/8, ...
#include <stdio.h>
int main() {
double a = 2, b = 1, sum = 0;
for (int i = 1; i <= 20; ++i) {
sum += a / b;
double next_a = a + b;
b = a;
a = next_a;
}
printf("前20項和 = %lf\n", sum);
return 0;
}
前20項和 = 32.660264
a 更新前的值,避免順序錯誤;double 保證精度;F_{n+2}/F_{n+1},和無簡單閉式,迭代最直接。