Assistente Legislativo Administrativo - Criador e Desenvolvedor de Web e Plataformas Digitais
Analise o código JavaScript a seguir.
function enigma(n) {
if (n == 0 || n == 1) {
return n;
} else {
return enigma (n-1) + enigma (n-2);
}
}
Assinale o valor retornado para a expressão enigma(4).
A21
B13
C8
D5
E3
Revelar gabarito e comentário▾
GabaritoE — 3
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
JavaScript – Função Recursiva (Fibonacci)
Gabarito: letra E. A função enigma implementa a sequência de Fibonacci de forma recursiva: retorna n quando n é 0 ou 1, e para outros valores retorna a soma dos dois termos anteriores. Assim, enigma(4) = enigma(3) + enigma(2) = (enigma(2) + enigma(1)) + (enigma(1) + enigma(0)) = ((enigma(1)+enigma(0))+1) + (1+0) = ((1+0)+1)+1 = 2+1 = 3.
Alternativa A – ❌ Incorreta
21 corresponde a enigma(7) ou enigma(8)? Na verdade, Fibonacci: F7=13, F8=21. O valor 21 é muito alto para enigma(4).
Alternativa B – ❌ Incorreta
13 é o sétimo termo (F7=13), não o quarto.
Alternativa C – ❌ Incorreta
8 é o sexto termo (F6=8).
Alternativa D – ❌ Incorreta
5 é o quinto termo (F5=5).
Alternativa E – ✅ Correta ⟵ GABARITO
3 é o quarto termo da sequência (F4=3), resultado correto da recursão.
PEGA ESSA DICA!
Para funções recursivas como essa, simule os primeiros valores: enigma(0)=0, enigma(1)=1, enigma(2)=1, enigma(3)=2, enigma(4)=3. Memorize que a sequência de Fibonacci começa com 0,1,1,2,3,5,8... e relacione o índice da função com o termo.