1. ### USING ITERATION ###

  2. # returns the nth term in the Fibonacci sequence
  3. def fibonacci(n):
  4.     i = 0
  5.     j = 1
  6.     for term in range(1, n):
  7.         temp = i
  8.         i = j
  9.         j += temp
  10.     return j

  11. print(fibonacci(1)) # 1
  12. print(fibonacci(2)) # 1
  13. print(fibonacci(6)) # 8
  14. print(fibonacci(12)) # 144

  15. ### USING RECURSION ###

  16. # params: i and j are intial two Fibonacci terms; n is the nth term from i
  17. # return: the nth term of the Fibonacci sequence (starting from i = 1st term)
  18. def fibonacci(i, j, n):
  19.     if (n > 0):
  20.         return fibonacci(j, i+j, n-1) # next term; reduce the number of terms left
  21.     else: # completed all terms
  22.         return i

  23. print(fibonacci(0, 1, 1)) # 1
  24. print(fibonacci(0, 1, 2)) # 1
  25. print(fibonacci(0, 1, 6)) # 8
  26. print(fibonacci(0, 1, 12)) # 144
DOWNLOAD

        Created: May 8, 2014
    Last Updated: May 15, 2014
Completed in full by: Michael Yaworski