int fibonacciItr(int n) /* Derived from */ { int a, b, oldA; /* O(n) recursive */ a=0; b=1; /* by removal of */ while(n > 1) /* tail recursion. */ { oldA=a; a=b; b=b+oldA; /* L.Allison, */ n-- ; /* Comp Sci Monash */ } return b; } /* O(n) time Fibonacci Function, Non-Recursive */