什么是斐波那契数列?
斐波那契数列(Fibonacci sequence)是数学中最著名的数列之一。它从 0 和 1 开始,之后的每一项都等于前两项之和:0、1、1、2、3、5、8、13、21、34……依此类推。本计算器可以求出任意非负序号对应的 \(F(n)\),也就是数列的第 \(n\) 项,同时给出前 \(n\) 项的累计和,以及数列不断逼近的黄金分割比 \(\varphi\)。
如何使用本计算器
输入项的序号 \(n\)(0 到 92 之间的整数),计算器会立刻返回 \(F(n)\)。之所以把上限设为 92,是为了在标准的 64 位精度内保持结果完全精确;超过这个序号后,数值就只能是近似值了。结果面板还会显示累计和 \(F(0)+F(1)+\dots+F(n)\),这个和恰好等于 \(F(n+2) - 1\),非常巧妙。
公式详解
斐波那契数列的递推定义是 $$F(n) = F(n-1) + F(n-2),\quad F(0)=0,\ F(1)=1$$ 初始值为 \(F(0)=0\)、\(F(1)=1\)。此外还有一个著名的通项公式,叫做比内公式(Binet's formula):$$F(n) = \frac{\varphi^{n} - \psi^{n}}{\sqrt{5}},\quad \varphi=\frac{1+\sqrt5}{2}$$ 其中 \(\varphi = \frac{1+\sqrt5}{2} \approx 1.618\) 就是黄金分割比,而 \(\psi = \frac{1-\sqrt5}{2}\) 是它的共轭。随着 \(n\) 越来越大,相邻两项之比 \(F(n+1)/F(n)\) 会不断逼近 \(\varphi\)。
实例演算
假设 \(n = 10\)。逐项推算:\(F(2)=1\)、\(F(3)=2\)、\(F(4)=3\)、\(F(5)=5\)、\(F(6)=8\)、\(F(7)=13\)、\(F(8)=21\)、\(F(9)=34\)、\(F(10)=55\)。所以 $$F(10) = 55$$ 而 \(F(0)\) 到 \(F(10)\) 的总和为 $$F(12) - 1 = 144 - 1 = 143$$
常见问题
数列是从 0 还是从 1 开始?本计算器采用通用约定 \(F(0)=0\)、\(F(1)=1\),因此 \(F(2)=1\)。
为什么 \(n\) 的上限是 92?\(F(92)\) 是能够精确容纳在 64 位有符号整数中的最大斐波那契数,序号再大就会丢失精度。
黄金分割比和斐波那契数列有什么关系?用每一个斐波那契数除以前一个数,得到的比值会越来越接近 \(\varphi \approx 1.6180339887\)。