Sobes.tech
Junior — Middle

Explique o conceito de chamadas recursivas em programação

sobes.tech IA

Resposta da IA

A chamada recursiva é quando uma função chama a si mesma para resolver um problema. Normalmente, a recursão é usada para dividir uma tarefa complexa em subtarefas mais simples do mesmo tipo.

Exemplo: calcular o fatorial de um número n (n!) — o produto de todos os números de 1 a n.

def factorial(n):
    if n == 0 or n == 1:
        return 1
    else:
        return n * factorial(n - 1)

Aqui, a função factorial chama a si mesma com um argumento reduzido, até atingir o caso base (n == 0 ou 1), após o qual começa a retornar resultados ao longo da cadeia de chamadas.

É importante que a função recursiva tenha um caso base, caso contrário, as chamadas serão infinitas e levarão a um estouro de pilha.