此數列分子分母皆為**費波納契數列**:F₁=1, F₂=2, Fₙ=Fₙ₋₁+Fₙ₋₂,第 k 項為 Fₖ₊₁ / Fₖ。本文實現迭代求和,分析黃金比例收斂特性。
#include <stdio.h>
int main() {
double sum = 0.0;
double a = 2.0; // 分子 F₂
double b = 1.0; // 分母 F₁
int n = 20; // 求前 20 項
for (int i = 1; i <= n; i++) {
sum += a / b; // 累加當前項
double next_a = a + b; // 下一項分子 = 當前分子 + 分母
double next_b = a; // 下一項分母 = 當前分子
a = next_a;
b = next_b;
}
printf("前 %d 項和 = %.10f\n", n, sum); // 32.660261...
return 0;
}
前 20 項和 = 32.6602610000
| 項次 k | 分子 Fₖ₊₁ | 分母 Fₖ | 項值 Fₖ₊₁/Fₖ | 備註 |
|---|---|---|---|---|
| 1 | 2 | 1 | 2.000000 | |
| 2 | 3 | 2 | 1.500000 | |
| 3 | 5 | 3 | 1.666667 | |
| 4 | 8 | 5 | 1.600000 | |
| 5 | 13 | 8 | 1.625000 | |
| ... | ... | ... | ... | |
| 20 | 10946 | 6765 | 1.618034 | 趨近 φ |
lim (Fₖ₊₁/Fₖ) = φ = (1+√5)/2 ≈ 1.6180339887 (黃金比例)|Fₖ₊₁/Fₖ - φ| ≈ φ⁻²ᵏ/√5矩陣快速冪法求第 n 項 (O(log n))