import java.lang.Math;
import java.text.*;

class Fibonacci2
{
    /** Print ascending members of the Fibonacci sequence that are
    representable as 64-bit signed integers, prefixed by their term
    numbers, and followed by the ratio of successive terms, to
    demonstrate the 1.618...^n growth (the ratio approaches the golden
    ratio, (1 + sqrt(5))/2 = 1.6180339887498949, and reaches it (to
    machine precision) at 41 terms: the fourth item on each line is
    the difference from the golden ratio). */

    static final double golden_ratio = (1.0 + Math.sqrt(5.0))/2.0;

    public static void main(String[] args)
    {
	long lo = 1L;
	long hi = 1L;
	long n = 1L;
	double ratio;
	System.out.print(n);

	System.out.print("\t");

	System.out.println(lo);

	while (hi > 0L)
	{
	    n++;

	    System.out.print(n);
	    System.out.print("\t");
	    System.out.print(hi);
	    System.out.print("\t");

	    ratio = (double)hi/(double)lo;

	    System.out.print(ratio);
	    System.out.print("\t");
	    System.out.println(ratio - golden_ratio);

	    hi = lo + hi;
	    lo = hi - lo;
	}
    }
}
