Fibonacci3 := proc() local golden_ratio, lo, hi, limit, n, ratio; lo := 1; hi := 1; n := 1: Digits := 16: golden_ratio := evalf((1.0 + sqrt(5.0))/2.0): limit := 2^63 - 1: printf("%2d\t%19.0f\n", n, lo): while (hi <= limit) do n := n + 1: ratio := hi/lo: printf("%2d\t%19.0f\t%19.15f\t%19.15f\n", \ n, hi, ratio, (ratio - golden_ratio)): hi := lo + hi: lo := hi - lo: od: end proc: Fibonacci3():