0 Compartilhamentos 324 Views 1 Comments

Como solucionar uma sequência Fibonacci usando JavaScript

28 de agosto de 2019

Fibonacci foi o mais importante matemático da Idade Média. Nascido na República de Pisa, no que hoje é a Itália, Leonardo Bonacci foi fundamental para popularizar os números hindu-arábicos na Europa no século XIII, embora seja mais famoso hoje em dia pela chamada “Sequência Fibonacci”.

Os livros e Hollywood ajudaram a dar um ar de mistério a um construto matemático que nada mais é que uma sequência de números que começa com zero e um e onde cada número posterior é a soma dos dois números anteriores. Desta forma, nós teríamos 0, 1, 1, 2, 3, 5, 8, 13, 21, 34… ou 0, 1, 1 (1+0), 2 (1+ 1), 3 (2+1), 5 (2+3), 8 (3+5), 13 (5+8), 21 (8+13), 34 (13 + 21) até o infinito. As aplicações matemáticas da Sequência Fibonacci são várias e fogem do escopo desse guia, mas o tema ganhou a atenção do grande público graças a obras de ficção e teorias de conspiração.

Entretanto, não há nada de enigmático nesses números recursivos e você pode obtê-los usando nada menos que seis linhas de código JavaScript. Com isso, é possível descobrir o número da posição de uma Sequência Fibonacci passando o valor de n. Para facilitar o entendimento, serão adicionados comentários, mas o que realmente faz a “mágica” da matemática acontecer são somente seis linhas.

Para entender como isso é possível, é importante perceber que esse desafio envolve fazer uma iteração pelo número de vezes indicados pelo valor de passado para a função. Entretanto, uma abordagem recursiva, em que a função é referenciada por si mesma, seria o caminho mais elegante para se tentar.

O que nós queremos: fibonacci(3) // –> precisa retornar o valor 2

Como isso pode ser feito:

const fibonacci = num => {
// se o valor passado é ou 0 ou 1, é preciso retornar o valor passado
if(num < 2) {
return num
}
// aqui entra a recursão propriamente dita
return fibonacci(num - 1) + fibonacci(num - 2)
}

Carregando...

Você pode se interessar

Como cortar texto sem usar uma linha de script
Dicas
6 visualizações
Dicas
6 visualizações

Como cortar texto sem usar uma linha de script

Carlos L. A. da Silva - 11 de janeiro de 2021

Conheça o poder da propriedade text-overflow no CSS e nunca mais edite strings no braço.

Como começar a programar
Artigos
14 visualizações
Artigos
14 visualizações

Como começar a programar

Carlos L. A. da Silva - 7 de janeiro de 2021

Então, você quer entrar nessa vida? A decisão é sua, mas nós podemos te ajudar com os primeiros passos.

Como cancelar qualquer conta online para sempre
Dicas
17 visualizações
Dicas
17 visualizações

Como cancelar qualquer conta online para sempre

Carlos L. A. da Silva - 30 de dezembro de 2020

Que tal fazer uma limpeza nas suas contas inativas ou finalmente largar aquela rede social que só dá desgosto?

One Response

Deixe um Comentário

Your email address will not be published.

Mais publicações

Retrospectiva (positiva) de 2020
Artigos
19 visualizações
19 visualizações

Retrospectiva (positiva) de 2020

Carlos L. A. da Silva - 29 de dezembro de 2020
O que seria internet quântica?
Artigos
19 visualizações
19 visualizações

O que seria internet quântica?

Carlos L. A. da Silva - 23 de dezembro de 2020
Como fazer uma árvore de Natal… com CSS!
Dicas
26 visualizações
26 visualizações

Como fazer uma árvore de Natal… com CSS!

Carlos L. A. da Silva - 21 de dezembro de 2020
Promoções de Jogos do Final de Semana (18/12) – Edição Natalina
Notícias
31 visualizações
31 visualizações

Promoções de Jogos do Final de Semana (18/12) – Edição Natalina

Carlos L. A. da Silva - 18 de dezembro de 2020