[gforth] / gforth / fib.fs  

gforth: gforth/fib.fs


1 : anton 1.2 \ Note: This is incorrect ("n fib" produces the result for fib(n+1)),
2 :     \ but we do not change it to ensure that future timing results are
3 :     \ comparable to older timing results.
4 :    
5 : anton 1.1 : fib ( n1 -- n2 )
6 :     dup 2 < if
7 :     drop 1
8 :     else
9 :     dup
10 :     1- recurse
11 :     swap 2 - recurse
12 :     +
13 :     then ;
14 :    
15 :     : main 34 fib drop ;

CVS Admin

Powered by ViewCVS 1.0-dev
(Powered by ViewCVS)

ViewCVS and CVS Help