diff --git a/aula114.py b/aula114.py new file mode 100644 index 0000000..6622cc3 --- /dev/null +++ b/aula114.py @@ -0,0 +1,24 @@ +# Funções recursivas e recursividade +# - funções que podem se chamar de volta +# - úteis p/ dividir problemas grandes em partes menores +# Toda função recursiva deve ter: +# - Um problema que possa ser dividido em partes menores +# - Um caso recursivo que resolve o pequeno problema +# - Um caso base que para a recursão +# - fatorial - n! = 5! = 5 * 4 * 3 * 2 * 1 = 120 +# https://brasilescola.uol.com.br/matematica/fatorial.htm +def recursiva(inicio=0, fim=4): + + print(inicio, fim) + + # Caso base + if inicio >= fim: + return fim + + # Caso recursivo + # contar até chegar ao final + inicio += 1 + return recursiva(inicio, fim) + + +print(recursiva())