In this exercise you can practice using C-functions in Cython modules.
In this exercise you can practice using C-functions in Cython modules.
The code for this exercise is located under cython/c-functions.
Fibonacci numbers are a sequence of integers defined by the recurrence relation
Fn = Fn-1 + Fn-2
with the initial values F0=0, F1=1.
The module fib.py contains a function fibonacci(n) that calculates recursively Fn. The function can be used e.g. as
fromfibimportfibonacci
fibonacci(30)
Make a Cython version of the module, and investigate how adding type information and making fibonacci a C-function affects performance (hint: function needs to be called both from Python and C). Use timeit for performance measurements, either from command line