Gostou do nosso conteúdo? Te ajudou?
Nos ajude também! Faça um PIX, de qualquer valor:
programacao.progressiva@gmail.com
Mostrando postagens com marcador Sequência de Fibonacci. Mostrar todas as postagens
Mostrando postagens com marcador Sequência de Fibonacci. Mostrar todas as postagens

Sequência de Fibonacci em JavaScript

Neste tutorial de JS, vamos aprender como gerar a sequência, e qualquer termo, da série de Fibonacci, usando laços FOR e WHILE em JavaScript.

A Sequência de Fibonacci


Assim como a PA (Progressão Aritmética), é uma sequência de números, formada por uma regras bem simples.

O primeiro número da série é 0.
O segundo é 1.

A partir daí, o próximo termo é sempre a soma dos dois anteriores. Logo:
Terceiro termo = 0 + 1 = 1
Quarto termo   = 1 + 1 = 2
Quinto termo   = 1 + 2 = 3
Sexto termo     = 2 + 3 = 5
Sétimo termo   = 3 + 5 = 8
Oitavo termo   = 5 + 8 = 13
...

Ela é de extrema importância na Matemática e aparece de maneira assustadora na Natureza, vale a pena uma pesquisa!

Série de Fibonacci em JavaScript

Crie um script que pede ao usuário um termo qualquer da série de Fibonacci e ele exiba tal termo.

O termo que o usuário quer ver será armazenado na variável termo, o número da sequência em numero. Além disso, temos que ter duas outras variáveis, que vão armazenar os dois últimos números da sequência: a ultimo e a penultimo.

Primeiro, precisamos tratar o caso que a pessoa digite termo 1 ou 2.
Nesse caso, basta fazer termo-1 .
Se ela tiver digitado 1, retorna 0. Se tiver digitado 2, retorna o valor 1.

Acima do termo 2, vamos entrar no laço for.
O próximo termo da sequência é:
numero = ultimo + penultimo

Agora, precisamos atualizar os valores de ultimo e penultimo:
penultimo = ultimo;
ultimo = numero


Veja como ficou:
Código HTML:
<!DOCTYPE html>
<html>
 <head>
   <title>Apostila JavaScript Progressivo</title>
   <script type="text/javascript" src="script.js"></script>
 </head>
 <body>
   Exibir até o termo: <input id="numero" type="number"> <br />
   <button onclick="fibonacci()">Exibir</button><br />
   <div id='resposta'></div>
 </body>
</html>
Código JavaScript:
function fibonacci(){
  var termo = parseInt(document.getElementById('numero').value);
  var resposta = document.getElementById('resposta');
  var penultimo=0, ultimo=1;
  var numero;

  if(termo<=2)
   numero = termo-1;
  else
   for(var count=3 ; count<=termo ; count++){
    numero = ultimo + penultimo;
    penultimo = ultimo;
    ultimo = numero;
   }

  resposta.innerHTML=numero;
}
Resultado:


Exibir o termo:




Fibonacci com laço WHILE

function fibonacci(){
  var termo = parseInt(document.getElementById('numero').value);
  var resposta = document.getElementById('resposta');
  var penultimo=0, ultimo=1;
  var numero;

  if(termo<=2)
   numero = termo-1;
  else{
   count=3;
   while(count<=termo){
    numero= ultimo + penultimo;
    penultimo = ultimo;
    ultimo=numero;
    count++;
   }
  }

  resposta.innerHTML=numero;
}


Exercício de JavaScript

Agora, em vez de exibir o termo, faça um script que printe na página todos os números da sequência de Fibonacci, até o termo escolhido pelo usuário.

Código: na apostila!
Resultado:

Exibir até o termo: