Questão nº 70
Questão de Tecnologia da Informação · FGV TCE-SP 2023 (nº 70)
A série de Fibonacci é definida da seguinte forma: o primeiro e o segundo termos valem 1, e os demais são obtidos pela soma de seus dois antecessores. Em termos gráficos, ela define uma espiral, sendo utilizada em diversas áreas, que vão da biologia até o mercado financeiro. Um algoritmo para cálculo do termo de ordem n da série é apresentado a seguir.
```
algoritmo Fibonacci
var
x, a, b, i, f: inteiro
início
leia(x);
a <- 1
b <- 1
f <- 1
i <- 2
enquanto i <= x faça
f <- a + b
a <- b
b <- f
i <- i + 1
fim enquanto
escreva("Fibonacci para o termo: ", f)
fim algoritmo
```
Executando o algoritmo, se for informado o valor 7 para x, será impressa a mensagem "Fibonacci para o termo: ":
- A7
- B21 (alternativa correta)
- C28
- D64
- E128
Resposta comentada
Gabarito Alternativa B
A série de Fibonacci é uma sequência numérica onde cada número, a partir do terceiro, é a soma dos dois anteriores (ex: 1, 1, 2, 3, 5, 8...). O algoritmo dado calcula esses termos de forma iterativa (repetitiva), atualizando os valores dos dois antecessores a cada passo.
(A) Incorreta: O valor 7 é o termo de entrada (x), não o resultado do cálculo da série de Fibonacci para essa entrada.
(B) Correta: Ao executar o algoritmo com x = 7, o loop enquanto i <= x será executado enquanto i for menor ou igual a 7.
A sequência de Fibonacci é: F1=1, F2=1, F3=2, F4=3, F5=5, F6=8, F7=13, F8=21...
- Inicialização:
a=1(F1),b=1(F2),f=1,i=2. - i=2:
f = a+b = 1+1 = 2(F3).a=1,b=2.i=3. - i=3:
f = a+b = 1+2 = 3(F4).a=2,b=3.i=4. - i=4:
f = a+b = 2+3 = 5(F5).a=3,b=5.i=5. - i=5:
f = a+b = 3+5 = 8(F6).a=5,b=8.i=6. - i=6:
f = a+b = 5+8 = 13(F7).a=8,b=13.i=7. - i=7:
f = a+b = 8+13 = 21(F8).a=13,b=21.i=8.
O loop termina porquei(8) não é mais menor ou igual ax(7). O valor final defé 21. Note que o algoritmo, como está escrito, calcula o (x+1)-ésimo termo da série de Fibonacci, e não o x-ésimo termo. Parax=7, ele calculaF(7+1) = F8 = 21.
(C) Incorreta: O valor 28 não corresponde a nenhum termo da série de Fibonacci nem a um resultado de cálculo esperado pelo algoritmo.
(D) Incorreta: O valor 64 não corresponde a nenhum termo da série de Fibonacci nem a um resultado de cálculo esperado pelo algoritmo.
(E) Incorreta: O valor 128 não corresponde a nenhum termo da série de Fibonacci nem a um resultado de cálculo esperado pelo algoritmo.
Fonte: FGV TCE-SP 2023 Auxiliar Técnico da Fiscalização - TI (Caderno Tipo 1). Reproduzida para fins de estudo.