Carregando...
Carregando...
Ajude a melhorar a plataforma
A situação em que dois subprogramas fazem chamadas recíprocas, como, por exemplo, um subprograma P faz uma chamada a um subprograma J, que, por sua vez, faz uma chamada a P, é caracterizada como uma
Explique melhor esta questão
Abre o Tutor com o enunciado e as alternativas já no campo — você revisa e envia.
Esta questão foi verificada por um de nossos administradores.
Alternativa B - Recursividade Indireta
A questão aborda um dos pilares fundamentais da programação estruturada e algoritmos: os tipos de recursividade.
Recursividade ocorre quando uma função ou subprograma se refere a si mesmo durante sua execução. Existem duas categorias principais:
No enunciado da questão, temos a seguinte sequência lógica:
Isso caracteriza um ciclo de dependência entre dois elementos distintos. Como a chamada não é feita pela própria função imediatamente (o que seria recursividade direta), mas sim através de um terceiro elemento ($J$), definimos isso como recursividade indireta.
As outras alternativas podem ser descartadas pelos seguintes motivos:
Portanto, a situação descrita é o exemplo clássico de recursividade indireta.
print(fun(0, 3))```
Qual será a saída do snippet? ```