Recursividade em Algoritmos
Gabarito: letra C. Quando um procedimento ou função chama a si mesmo, o termo técnico correto é recursividade (ou recursão). Esse é um conceito fundamental em programação, em que uma função se invoca repetidamente até atingir uma condição de parada. As demais alternativas misturam esse conceito com formas de passagem de parâmetros, que são mecanismos distintos de comunicação entre funções.
Alternativa A — ❌ Incorreta
Afirma que a autochamada é denominada "passagem de parâmetro por referência". Isso é falso: passagem por referência é um mecanismo que permite que uma função modifique o valor de uma variável fora de seu escopo, não tem relação com a função chamar a si mesma.
Alternativa B — ❌ Incorreta
Afirma que é "passagem de parâmetro por valor". Passagem por valor é um mecanismo em que uma cópia do argumento é passada para a função, também sem relação com recursão.
Alternativa C — ✅ Correta ⟵ GABARITO
A definição está correta: chama-se recursividade (ou recursão) quando uma função ou procedimento invoca a si próprio. É uma técnica poderosa para resolver problemas que podem ser decompostos em subproblemas semelhantes, como fatorial, fibonacci e travessia de árvores.
Alternativa D — ❌ Incorreta
"Passagem de parâmetro por variável" não é um termo padrão em linguagens de programação; quando muito, refere-se a passagem por referência em algumas linguagens, mas ainda assim não se confunde com recursão.
Alternativa E — ❌ Incorreta
"Passagem de parâmetro por recursão" é uma mistura incorreta de conceitos: recursão é uma técnica de definição de função, e não um modo de passagem de parâmetros.
Gabarito: letra C.