A228667 Array: row n shows the accelerated continued fraction of F(n+1)/F(n), where F = A000045 (Fibonacci numbers).
1, 2, 1, 2, 1, 1, 2, 2, -2, -2, 2, -3, 3, 2, -3, 2, 2, 2, -3, 3, -3, 2, -3, 3, -2, -2, 2, -3, 3, -3, 3, 2, -3, 3, -3, 2, 2, 2, -3, 3, -3, 3, -3, 2, -3, 3, -3, 3, -2, -2, 2, -3, 3, -3, 3, -3, 3, 2, -3, 3, -3, 3, -3, 2, 2, 2, -3, 3, -3, 3, -3, 3, -3, 2, -3, 3
Offset: 0
Examples
x/y ......... ACF(x/y) 1/1 ......... 1 2/1 ......... 2 3/2 ......... 1,2 5/3 ......... 1,1,2 8/5 ......... 2,-2,-2 13/8 ........ 2,-3,3 21/13 ....... 2,-3,2,2 34/21 ....... 2,-3,3,-3 55/34 ....... 2,-3,3,-2,-2 89/55 ....... 2,-3,3,-3,3
Programs
-
Mathematica
$MaxExtraPrecision = Infinity; aCF[rational_] := Module[{steps = {}, stop = False, i = 0, x = Numerator[rational], y = Denominator[rational], w, u, v, f, c},(*Step 1*)w = Mod[x, y]; Which[w == 0, c[i] = x/y; stop = True; AppendTo[steps, "A"], 0 < w <= y/2, c[i] = Floor[x/y]; {u, v, f} = {y, w, 1}; AppendTo[steps, "B"], w > y/2, c[i] = 1 + Floor[x/y]; {u, v, f} = {y, y - w, -1}; AppendTo[steps, "C"]]; i++; (*Step 2*)While[stop =!= True, w = Mod[u, v]; Which[f == 1 && w == 0, c[i] = u/v; stop = True; AppendTo[steps, "0.1"], f == -1 && w == 0, c[i] = -u/v; stop = True; AppendTo[steps, "0.2"], f == 1 && w <= v/2, c[i] = Floor[u/v]; {u, v, f} = {v, w, 1}; AppendTo[steps, "1"], f == 1 && w > v/2, c[i] = 1 + Floor[u/v]; {u, v, f} = {v, v - w, -1}; AppendTo[steps, "2"], f == -1 && w <= v/2, c[i] = -Floor[u/v]; {u, v, f} = {v, w, -1}; AppendTo[steps, "3"], f == -1 && w > v/2, c[i] = -1 - Floor[u/v]; {u, v, f} = {v, v - w, -f}; AppendTo[steps, "4"]]; i++]; (*Display results*){FromContinuedFraction[#], {"Steps", steps}, {"ACF", #}, {"CF", ContinuedFraction[x/y]}} &[Map[c, Range[i] - 1]]] Table[aCF[Fibonacci[n + 1]/Fibonacci[n]], {n, 1, 20}] (* Peter J. C. Moses, Aug 28 2013 *)
Comments