Files
cursopython2023/aula114.py
2022-11-07 09:57:24 -03:00

41 lines
894 B
Python

# 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
# import sys
# sys.setrecursionlimit(1004)
# 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(0, 1001))
def factorial(n):
if n <= 1:
return 1
return n * factorial(n - 1)
print(factorial(5))
print(factorial(10))
print(factorial(100))