Introdução à série Fibonacci em C ++
A série Fibonacci é uma série de números. Faz a cadeia de números adicionando os dois últimos números. O cálculo da série Fibonacci é fácil, pois basta adicionar os últimos dois dígitos para obter outro dígito. Mas, em algum momento em que o número de dígitos aumenta, torna-se bastante complexo. Então, para resolver esse problema, veremos como podemos criar um programa da série Fibonacci na linguagem C ++, para que se torne fácil. Vamos ver como a série Fibonacci realmente funciona.
Seja f (n) o enésimo termo.
f (0) = 0;
f (1) = 1;
As séries serão as seguintes:
1 (1 + 0)
2 (1 + 1)
3 (1 + 2)
5 (2 + 3)
8 (3 + 5)
13 (5 + 8)
21 (8 + 13
…e assim por diante
A lógica por trás da geração da série Fibonacci
- Inicialize o primeiro número para 0
- Inicialize o segundo número para 1
- Adicione o primeiro e o segundo número.
- Armazene o valor da adição no terceiro número.
- Imprima o terceiro número.
- Atribua o segundo número ao primeiro número
- Assange o terceiro número ao segundo número.
- Repita as etapas 3 a 7 até que a série Fibonacci para um determinado número seja calculada.
Programas da série Fibonacci em C ++
Nesta seção, veremos como descobrir a série Fibonacci usando vários métodos como recursão, loop, array, sem recursão, etc:
1. Sem o método de recursão
Código:
#include
using namespace std;
int main()
(
int first_num = 0, second_num = 1, third_num, i, num;
cout << "Enter random number to print fibonacci series:";
cin >> num;
cout << "Fibonacci Series for a given number:" < cout << first_num < cout << second_num << endl;
for(i = 2; i < num; ++i) //loop will starts from 2 because we have printed 0 and 1 before
(
third_num = first_num + second_num;
cout << third_num << endl;
first_num = second_num;
second_num = third_num;
)
return 0;
)#include
using namespace std;
int main()
(
int first_num = 0, second_num = 1, third_num, i, num;
cout << "Enter random number to print fibonacci series:";
cin >> num;
cout << "Fibonacci Series for a given number:" < cout << first_num < cout << second_num << endl;
for(i = 2; i < num; ++i) //loop will starts from 2 because we have printed 0 and 1 before
(
third_num = first_num + second_num;
cout << third_num << endl;
first_num = second_num;
second_num = third_num;
)
return 0;
)#include
using namespace std;
int main()
(
int first_num = 0, second_num = 1, third_num, i, num;
cout << "Enter random number to print fibonacci series:";
cin >> num;
cout << "Fibonacci Series for a given number:" < cout << first_num < cout << second_num << endl;
for(i = 2; i < num; ++i) //loop will starts from 2 because we have printed 0 and 1 before
(
third_num = first_num + second_num;
cout << third_num << endl;
first_num = second_num;
second_num = third_num;
)
return 0;
)
Resultado:
2. Usando o método de recursão
Código:
#include
using namespace std;
void FibonacciSeries(int num)
(
static int first_num = 0, second_num = 1, third_num;
if(num > 0)
(
third_num = first_num + second_num;
first_num = second_num;
second_num = third_num;
cout << third_num << endl;
FibonacciSeries(num - 1);
)
)
int main()
(
int num;
cout << "Enter random number to print fibonacci series:";
cin >> num;
cout << "Fibonacci Series for a given number: \n" << endl;
cout << "0" << endl;
cout << "1" << endl;
FibonacciSeries (num - 2); //number-2 is used because we have already print 2 numbers
return 0;
)
Resultado:
3. Usando um loop For
Código:
#include
using namespace std;
int main()
(
int first_num= 0, second_num = 1, third_num, i, num;
cout << "Enter random number to print fibonacci series:";
cin >> num;
cout << "Fibonacci Series for a given number:" < cout << first_num < cout << second_num < for(i = 0; i < num; i++) //loop will starts from 2 because we have printed 0 and 1 before
(
if(i <= 1)
third_num = i;
else
(
third_num = first_num + second_num;
cout << third_num < first_num = second_num;
second_num = third_num;
)
)
return 0;
)#include
using namespace std;
int main()
(
int first_num= 0, second_num = 1, third_num, i, num;
cout << "Enter random number to print fibonacci series:";
cin >> num;
cout << "Fibonacci Series for a given number:" < cout << first_num < cout << second_num < for(i = 0; i < num; i++) //loop will starts from 2 because we have printed 0 and 1 before
(
if(i <= 1)
third_num = i;
else
(
third_num = first_num + second_num;
cout << third_num < first_num = second_num;
second_num = third_num;
)
)
return 0;
)#include
using namespace std;
int main()
(
int first_num= 0, second_num = 1, third_num, i, num;
cout << "Enter random number to print fibonacci series:";
cin >> num;
cout << "Fibonacci Series for a given number:" < cout << first_num < cout << second_num < for(i = 0; i < num; i++) //loop will starts from 2 because we have printed 0 and 1 before
(
if(i <= 1)
third_num = i;
else
(
third_num = first_num + second_num;
cout << third_num < first_num = second_num;
second_num = third_num;
)
)
return 0;
)#include
using namespace std;
int main()
(
int first_num= 0, second_num = 1, third_num, i, num;
cout << "Enter random number to print fibonacci series:";
cin >> num;
cout << "Fibonacci Series for a given number:" < cout << first_num < cout << second_num < for(i = 0; i < num; i++) //loop will starts from 2 because we have printed 0 and 1 before
(
if(i <= 1)
third_num = i;
else
(
third_num = first_num + second_num;
cout << third_num < first_num = second_num;
second_num = third_num;
)
)
return 0;
)#include
using namespace std;
int main()
(
int first_num= 0, second_num = 1, third_num, i, num;
cout << "Enter random number to print fibonacci series:";
cin >> num;
cout << "Fibonacci Series for a given number:" < cout << first_num < cout << second_num < for(i = 0; i < num; i++) //loop will starts from 2 because we have printed 0 and 1 before
(
if(i <= 1)
third_num = i;
else
(
third_num = first_num + second_num;
cout << third_num < first_num = second_num;
second_num = third_num;
)
)
return 0;
)
Resultado:
4. Usando o loop While
Código:
#include
using namespace std;
int main()
(
int first_num = 0, second_num = 1, third_num = 0, i = 3, num;
cout << "Enter random number to print fibonacci series:" ;
cin >> num;
cout << "Fibonacci Series for a given number:" < cout << first_num < cout << second_num < while(i <= num)
(
third_num = first_num + second_num;
cout << third_num < first_num = second_num;
second_num = third_num;
i = i + 1;
)
return 0;
)#include
using namespace std;
int main()
(
int first_num = 0, second_num = 1, third_num = 0, i = 3, num;
cout << "Enter random number to print fibonacci series:" ;
cin >> num;
cout << "Fibonacci Series for a given number:" < cout << first_num < cout << second_num < while(i <= num)
(
third_num = first_num + second_num;
cout << third_num < first_num = second_num;
second_num = third_num;
i = i + 1;
)
return 0;
)#include
using namespace std;
int main()
(
int first_num = 0, second_num = 1, third_num = 0, i = 3, num;
cout << "Enter random number to print fibonacci series:" ;
cin >> num;
cout << "Fibonacci Series for a given number:" < cout << first_num < cout << second_num < while(i <= num)
(
third_num = first_num + second_num;
cout << third_num < first_num = second_num;
second_num = third_num;
i = i + 1;
)
return 0;
)#include
using namespace std;
int main()
(
int first_num = 0, second_num = 1, third_num = 0, i = 3, num;
cout << "Enter random number to print fibonacci series:" ;
cin >> num;
cout << "Fibonacci Series for a given number:" < cout << first_num < cout << second_num < while(i <= num)
(
third_num = first_num + second_num;
cout << third_num < first_num = second_num;
second_num = third_num;
i = i + 1;
)
return 0;
)#include
using namespace std;
int main()
(
int first_num = 0, second_num = 1, third_num = 0, i = 3, num;
cout << "Enter random number to print fibonacci series:" ;
cin >> num;
cout << "Fibonacci Series for a given number:" < cout << first_num < cout << second_num < while(i <= num)
(
third_num = first_num + second_num;
cout << third_num < first_num = second_num;
second_num = third_num;
i = i + 1;
)
return 0;
)
Resultado:
5. Usando uma matriz
Código:
#include
using namespace std;
int main()
(
int fibonacci(25), i, num;
cout << "Enter random number to print fibonacci series:";
cin >> num;
fibonacci(0) = 0;
fibonacci(1) = 1;
for (i = 2; i < num; i++)
(
fibonacci(i) = fibonacci(i - 1) + fibonacci(i - 2);
)
cout <<"Fibonacci Series for a given number:" << endl;
for (i = 0; i < num; i++)
(
cout << fibonacci(i) < )
return 0;
)#include
using namespace std;
int main()
(
int fibonacci(25), i, num;
cout << "Enter random number to print fibonacci series:";
cin >> num;
fibonacci(0) = 0;
fibonacci(1) = 1;
for (i = 2; i < num; i++)
(
fibonacci(i) = fibonacci(i - 1) + fibonacci(i - 2);
)
cout <<"Fibonacci Series for a given number:" << endl;
for (i = 0; i < num; i++)
(
cout << fibonacci(i) < )
return 0;
)
Resultado:
6. Programa da série Fibonacci em C ++ usando o número especificado
Código:
#include
using namespace std;
int main()
(
int first_num = 0, second_num = 1, third_num, i;
cout << "Fibonacci Series for a given number:";
cout << first_num < cout << second_num < for(i = 2; i < 10; ++i) //loop will starts from 2 because we have printed 0 and 1 before
(
third_num = first_num + second_num;
cout << third_num < first_num = second_num;
second_num = third_num;
)
return 0;
)#include
using namespace std;
int main()
(
int first_num = 0, second_num = 1, third_num, i;
cout << "Fibonacci Series for a given number:";
cout << first_num < cout << second_num < for(i = 2; i < 10; ++i) //loop will starts from 2 because we have printed 0 and 1 before
(
third_num = first_num + second_num;
cout << third_num < first_num = second_num;
second_num = third_num;
)
return 0;
)#include
using namespace std;
int main()
(
int first_num = 0, second_num = 1, third_num, i;
cout << "Fibonacci Series for a given number:";
cout << first_num < cout << second_num < for(i = 2; i < 10; ++i) //loop will starts from 2 because we have printed 0 and 1 before
(
third_num = first_num + second_num;
cout << third_num < first_num = second_num;
second_num = third_num;
)
return 0;
)#include
using namespace std;
int main()
(
int first_num = 0, second_num = 1, third_num, i;
cout << "Fibonacci Series for a given number:";
cout << first_num < cout << second_num < for(i = 2; i < 10; ++i) //loop will starts from 2 because we have printed 0 and 1 before
(
third_num = first_num + second_num;
cout << third_num < first_num = second_num;
second_num = third_num;
)
return 0;
)
Resultado:
Conclusão
Neste artigo, vimos como gerar a série Fibonacci na linguagem C ++ usando vários métodos. Espero que você ache este artigo útil.
Artigos recomendados
Este é um guia para a série Fibonacci em C ++. Aqui discutimos os diferentes programas da série Fibonacci em C ++. Você também pode consultar nossos outros artigos relacionados para saber mais.
- Mesclar algoritmos de classificação em Java
- Framework ASP.NET
- Palíndromo no programa C
- PHP Faça Loop Enquanto
- Introdução à série Fibonacci em C #
- Série Fibonacci em Java
- Palíndromo em C ++
- Algoritmos de classificação rápida em Java
- Loop While do JavaScript