Como já vimos em aulas anteriores no nosso curso, a sequência de Fibonacci é a sequência que começa com os valores 0 e 1 e, a partir do terceiro termo, cada termo é a soma dos dois termos anteriores.
Como já sabemos o primeiro e o segundo termos, podemos inicializar nosso vetor com eles, assim:
inteiro fibo[25] fibo[0] = 0 // primeiro termo na primeira posição do vetor fibo[1] = 1 // segundo termo na segunda posição do vetor
Agora, como já temos 2 termos da sequência, precisamos de uma repetição que execute exatamente 23 vezes para calcular os outros 23 termos a partir do terceiro.
Como já temos o primeiro elemento na posição 0 e o segundo elemento na posição 1, nossa variável contadora será inicializada com o valor 2, que é o índice do terceiro elemento do vetor, assim:
para(i = 2; i < 25; i++) fibo[i] = fibo[i-1] + fibo[i-2]
Esta repetição salva na posição i do vetor a soma dos elementos das duas posições anteriores, i – 1 e i – 2.
Agora, basta uma repetição para imprimir todo o vetor na tela, assim:
inteiro fibo[25] fibo[0] = 0 // primeiro termo na primeira posição do vetor fibo[1] = 1 // segundo termo na segunda posição do vetor para(i = 2; i < 25; i++) fibo[i] = fibo[i-1] + fibo[i-2] para(i = 0; i < 25; i++) escreva(fibo[i], ", ")
A seguir é apresentado o código completo em Portugol para calcular os n primeiros termos da sequência de fibonacci.
programa{ funcao inicio(){ inteiro i, fibo[30] fibo[0] = 0 fibo[1] = 1 para(i = 2; i < 30; i++){ fibo[i] = fibo[i-1] + fibo[i-2] } para(i = 0; i < 30; i++){ escreva(fibo[i], ", ") } } }