The Greedy Egyptian Algorithm

Writing a rational number r<1  as an Egyptian Fraction means to find a finite sequence of distinct integers (Subscript[a, i]), such that 
					 r = (Subscript[Σ, i = 1]^n)(1/(Subscript[a, i]))
 For instance,
 					(4/5) = (1/2) + (1/4) + (1/20)
The "Greedy Egyptian Algorithm implemented here is known to terminate after finitely many steps.

RatLess1Q[a_Rational] := a < 1\(Greedy[a_?RatLess1Q] := 
      Module[{b, c := a, d := a, i = 0, lst = {}, s = SessionTime[]}, 
			
        While[d > 0, \(i++\); 
          Print[i, "		", b = 1/Ceiling[1/d], \ \ \ \ \ \ \ \ "
", 
            SessionTime[] - s, " sec."]; d = d - 1/Ceiling[1/d]; 
          lst = Append[lst, b]]; 
Apply[Plus, lst] === c]\)

Greedy[4/5]

Greedy[5662607636/394745469320301]

Helmut Knaust, 3-3-1999