JavaScriptFunçõesintermediario

Recursão — Fibonacci

Recursão é usada em código real para percorrer estruturas de dados como árvores de diretórios, processar JSON aninhado ou implementar algoritmos de busca. Dominar recursão permite resolver problemas que têm definições recursivas naturais de forma clara e elegante.

O PROBLEMA

Crie função recursiva fibonacci(n) que retorna o n-ésimo termo.

EXEMPLO

fibonacci(0) → 0
fibonacci(7) → 13

SOBRE O CONCEITO

Uma função recursiva chama a si mesma com argumentos menores até atingir um caso base. Para Fibonacci, os casos base são n === 0 (retorna 0) e n === 1 (retorna 1). Um erro comum é omitir o caso base para n === 1, o que faz a função continuar chamando para números negativos, causando recursão infinita. Outro erro é somar os termos errados, como usar fibonacci(n-1) + fibonacci(n-1) em vez da soma dos dois anteriores. A lógica correta é fibonacci(n-1) + fibonacci(n-2).

RESOLUÇÃO

Mais exercícios de Funções

JSF019 · IntermediárioComposição de funçõesJSF020 · IntermediárioIIFEJSF022 · AvançadoGenerator functionJSF023 · AvançadoFunção pura vs impura
Ver todos os exercícios de JavaScript