a) 就是按照线性递推数列的一般做法
设x²=x+1的两个实数解是c₁和c₂,由韦达定理c₁c₂=-1,c₁+c₂=1
因为f[n+2]= f[n+1]+f[n]
可以推出 f[n+2]- c₂f[n+1] = c₁(f[n+1]- c₂f[n])
令 g[n]= f[n]-c₂f[n-1],那相当于g[n+2]= c₁g[n+1] 对所有正整数n 都成立
所以n≥2时 g[n]= c₁^(n-2)*g[2] = c₁^(n-2)*(1-c₂) = c₁^(n-1)
也就是f[n]- c₂f[n-1] = c₁^(n-1) 对n≥2成立
设n≥2时,常数C满足 f[n]- C*c₁^n = c₂(f[n-1]- C*c₁^(n-1))
只需要 1 = C*(c₁-c₂) ,C= 1/(c₁-c₂)
这样令h[n]= f[n]-c₁^n/(c₁-c₂),可以得到n≥2时 h[n]= c₂h[n-1],所以h[n]= c₂^(n-1)*h[1]
其中h[1] = 1-c₁/(c₁-c₂) = -c₂/(c₁-c₂)
代回去得到 h[n]= -c₂^n/(c₁-c₂)
f[n]= -c₂^n/(c₁-c₂)+ c₁^n/(c₁-c₂) = (c₁^n-c₂^n) /(c₁-c₂)
对于n=1,式子也成立,所以这个就是f[n]的通项公式,c₁和c₂交换位置不会影响结果