0 Compartilhamentos 775 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

Windows 11 vem aí?!
Artigos
71 visualizações
Artigos
71 visualizações

Windows 11 vem aí?!

Carlos L. A. da Silva - 15 de junho de 2021

Depois de mais de cinco anos, há claros sinais de que o Windows 10 será substituído por uma próxima versão do sistema operacional da Microsoft.

As “gambiarras” que os desenvolvedores de jogos utilizam
Artigos
221 visualizações
Artigos
221 visualizações

As “gambiarras” que os desenvolvedores de jogos utilizam

Carlos L. A. da Silva - 6 de junho de 2021

Não seja tão duro com você mesmo! O caminho da programação está lotado de "gambiarras" e até jogos conhecidos apelam para alguns truques.

Qual framework de PHP é o melhor para 2021?
Artigos
330 visualizações
Artigos
330 visualizações

Qual framework de PHP é o melhor para 2021?

Carlos L. A. da Silva - 27 de maio de 2021

A Theme Selection fez um comparativo das opções disponíveis no mercado e você vai bater o martelo sobre qual é o melhor framework para suas necessidades.

One Response

Deixe um Comentário

Your email address will not be published.

Mais publicações

Adeus a Mandic, um dos “pais” da internet brasileira
Artigos
437 visualizações
437 visualizações

Adeus a Mandic, um dos “pais” da internet brasileira

Carlos L. A. da Silva - 18 de maio de 2021
O que é o FLoC e como ele afeta sua privacidade na internet?
Artigos
555 visualizações
555 visualizações

O que é o FLoC e como ele afeta sua privacidade na internet?

Carlos L. A. da Silva - 5 de maio de 2021
Como planejar e construir um projeto de programação
Artigos
793 visualizações
793 visualizações

Como planejar e construir um projeto de programação

Carlos L. A. da Silva - 19 de abril de 2021