A228929 Optimal ascending continued fraction expansion of Pi - 3.
7, -113, 4739, -46804, 134370, -614063, 1669512, -15474114, -86232481, 1080357006, -8574121305, -24144614592, 133884333083, -2239330253016, -6347915250018, 14541933941298, -42301908155404, -298013673554972, 5177473084279656, -46709468571434452, 1201667304102142095, -68508286025632748778, 850084640720511629243, -2458418086834560217354
Offset: 1
Keywords
Examples
Pi = 3 + 1/7*(1 - 1/113*(1 + 1/4739*(1 - 1/46804*(1 + 1/134370*(1 - 1/614063*(1 + 1/1669512*(1 + ...))))))).
Links
- G. C. Greubel, Table of n, a(n) for n = 1..500
Programs
-
Derive
ArticoExp(x, n) := VECTOR(ROUND(1, ABS(k))*SIGN(k), k, ITERATES(ROUND(1, ABS(u))*ABS(u) - 1, u, MOD(x), n)) Precision:=Mixed PrecisionDigits:=10000 ArticoExp(PI,20)
-
Maple
# Slow procedure valid for every number ArticoExp := proc (n, q::posint)::list; local L, i, z; Digits := 50000; L := []; z := n-floor(n); for i to q+1 do if z = 0 then break end if; L := [op(L), round(1/abs(z))*sign(evalf(z))]; z := abs(z)*round(1/abs(z))-1 end do; return L end proc # Fast procedure, not suited for rational numbers ArticoExp := proc (n, q::posint)::list; local L, i, z; Digits := 50000; L := []; z := frac(evalf(n)); for i to q+1 do if z = 0 then break end if; L := [op(L), round(1/abs(z))*sign(z)]; z := abs(z)*round(1/abs(z))-1 end do; return L end proc # List the first 20 terms of the expansion of Pi ArticoExp(Pi,20)
-
Mathematica
ArticoExp[x_, n_] := Round[1/#] & /@ NestList[Round[1/Abs[#]]*Abs[#] - 1 &, FractionalPart[x], n]; Block[{$MaxExtraPrecision = 50000}, ArticoExp[Pi, 20]]
Formula
Given a positive real number x, let z(0)=x-floor(x) and z(k+1)=abs(z(k))*round(1/abs(z(k)))-1 ; then a(n)=sign(z(n))*round(1/abs(z(n))) for n>0.
Comments