Instruções
Sequências de números de n passos de Fibonacci
Estas séries numéricas são uma expansão da sequência comum de Fibonacci, onde:
<ol>
<li>Para $n = 2$ temos a sequência de Fibonacci; com valores iniciais $[1, 1]$ e $F_k^2 = F_{k-1}^2 + F_{k-2}^2$</li>
<li>Para $n = 3$ temos a sequência tribonacci; com valores iniciais $[1, 1, 2]$ e $F_k^3 = F_{k-1}^3 + F_{k-2}^3 + F_{k-3}^3$</li>
<li>Para $n = 4$ temos a sequência tetranacci; com valores iniciais $[1, 1, 2, 4]$ e $F_k^4 = F_{k-1}^4 + F_{k-2}^4 + F_{k-3}^4 + F_{k-4}^4$...</li>
<li>Para $n>2$ em geral temos a sequência de Fibonacci de $n$ passos - $F_k^n$; com valores iniciais sendo os primeiros $n$ valores da sequência de Fibonacci de $n$ passos $(n-1)$-ésima $F_k^{n-1}$; e o $k$-ésimo valor desta $n$-ésima sequência sendo $F_k^n = \sum_{i=1}^{(n)} {F_{k-i}^{(n)}}$</li>
</ol>
Para valores pequenos de $n$, prefixos numéricos gregos são às vezes usados para nomear individualmente cada série.
Sequências de $n$-ésimos passos de Fibonacci:
| $n$ | Nome da série | Valores |
| --- | ------------- | ------------------------------------------------------ |
| 2 | fibonacci | 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 ... |
| 3 | tribonacci | 1 1 2 4 7 13 24 44 81 149 274 504 927 1705 3136 ... |
| 4 | tetranacci | 1 1 2 4 8 15 29 56 108 208 401 773 1490 2872 5536 ... |
| 5 | pentanacci | 1 1 2 4 8 16 31 61 120 236 464 912 1793 3525 6930 ... |
| 6 | hexanacci | 1 1 2 4 8 16 32 63 125 248 492 976 1936 3840 7617 ... |
| 7 | heptanacci | 1 1 2 4 8 16 32 64 127 253 504 1004 2000 3984 7936 ... |
| 8 | octonacci | 1 1 2 4 8 16 32 64 128 255 509 1016 2028 4048 8080 ... |
| 9 | nonanacci | 1 1 2 4 8 16 32 64 128 256 511 1021 2040 4076 8144 ... |
| 10 | decanacci | 1 1 2 4 8 16 32 64 128 256 512 1023 2045 4088 8172 ... |
Sequências aliadas podem ser geradas onde os valores iniciais são alterados: A série de Lucas soma os dois valores anteriores como a série de Fibonacci para $n=2$, mas usa $\[2, 1]$ como seus valores iniciais.
O que fazer:
Escreva uma função para gerar sequências numéricas de $n$ passos de Fibonacci e sequências de Lucas. O primeiro parâmetro será $n$. O segundo parâmetro será o número de elementos a serem retornados. O terceiro parâmetro especificará se será exibida a sequência de Fibonacci ou a sequência de Lucas. Se o parâmetro for
Critérios de Aceitação:
"f", retorne a sequência de Fibonacci. Se for "l", retorne a sequência de Lucas. As sequências devem ser retornadas como um array.Critérios de Aceitação:
Testes:
- `fib_luc` deve ser uma função.
- `fib_luc(2,10,"f")` deve retornar `[1,1,2,3,5,8,13,21,34,55]`.
- `fib_luc(3,15,"f")` deve retornar `[1,1,2,4,7,13,24,44,81,149,274,504,927,1705,3136]`.
- `fib_luc(4,15,"f")` deve retornar `[1,1,2,4,8,15,29,56,108,208,401,773,1490,2872,5536]`.
- `fib_luc(2,10,"l")` deve retornar `[ 2, 1, 3, 4, 7, 11, 18, 29, 47, 76]`.
- `fib_luc(3,15,"l")` deve retornar `[ 2, 1, 3, 6, 10, 19, 35, 64, 118, 217, 399, 734, 1350, 2483, 4567 ]`.
- `fib_luc(4,15,"l")` deve retornar `[ 2, 1, 3, 6, 12, 22, 43, 83, 160, 308, 594, 1145, 2207, 4254, 8200 ]`.
- `fib_luc(5,15,"l")` deve retornar `[ 2, 1, 3, 6, 12, 24, 46, 91, 179, 352, 692, 1360, 2674, 5257, 10335 ]`.
Console