Write me a recursive function for calculating the nth fibonacci number
Below is a recursive Python function fib(n) that computes the nth Fibonacci number. This is split into a base case and a recursive case. The base case is given by the fact that the first two terms of the Fibonacci sequence are 0 and 1, so fib(0)=0 and fib(1)=1. The recursive case is given by the fact that the nth Fibonacci number f_n can be written as the sum of the previous two Fibonacci numbers, so f_n = f_{n-1} + f_{n-2}. Putting this all together, we get

```
def fib(n):
	# base case
	if n == 0:
		return 0
	if n == 1:
		return 1

	# recursive case
	return fib(n - 1) + fib(n - 2)
```

This will correctly calculate the nth Fibonacci number for nonnegative integer inputs n. However, recursively calculating Fibonacci numbers in this way takes exponential time in the value of n, so this code may be very slow for large inputs. It could be improved by memoizing previous results, or using a non-recursive approach. Simple iterative approaches can solve the problem more quickly, and closed-form expressions for the nth Fibonacci number exist and are even faster to evaluate.
Escreva-me uma função recursiva para calcular o n-ésimo número de Fibonacci
Abaixo está uma função recursiva de Python fib ((n) que calcula o n-ésimo número de Fibonacci. Esta é dividida em um caso base e um caso recursivo. O caso base é dado pelo fato de que os dois primeiros termos da seqüência de Fibonacci são 0 e 1, então fib ((0) = 0 e fib))) = 1. O caso recursivo é dado pelo fato de que o n-ésimo número de Fibonacci f_n pode ser escrito como a soma dos dois números anteriores de Fibonacci, então f_n = f_{n-1} + f_{n-2}.