Funções recursivas são aquelas que chamam a si mesmas para resolver um problema em partes menores. Essa técnica é poderosa e muito usada em algoritmos que envolvem repetição com variação de estado.A ideia é dividir o problema em subproblemas cada vez menores até chegar a um caso base, que encerra a recursão.