# Detailed explanation of Fibonacci sequence

Posted by ikscovski on Tue, 02 Nov 2021 22:14:43 +0100

catalogue

1. Know Fibonacci sequence

one point one   What is the Fibonacci sequence

one point two   The law of Fibonacci sequence

2. Realize Fibonacci sequence with code thinking

2.1 are you sure which Fibonacci sequence to find

2.2 how to use Fibonacci sequence law

two point three   How to realize Fibonacci sequence by loop

two point four   How to enter the cycle

two point five   How to jump out of a loop

## 1. Know Fibonacci sequence

### 1.1 what is the Fibonacci sequence

Generally speaking, it refers to such a sequence: 1, 1, 2, 3, 5, 8, 13, 21, 34

1.2 what are the rules of Fibonacci sequence

Generally speaking, the rule of Fibonacci sequence is: the sum of the first two numbers equals the third number

For example: 1 + 1 = 2, 1 + 2 = 3

## 2. Realize Fibonacci sequence with code thinking

### 2.1 determine which Fibonacci number to find

First, you need to define a variable to store the Fibonacci sequence received from the keyboard

```#include <stdio.h>
int main()
{
int n=0;
scanf("%d",&n);//Use n to receive the value of the Fibonacci sequence you want to query
return 0；
}```

### 2.2 how to use rules to realize Fibonacci sequence

From the above, we know that the Fibonacci sequence is the sum of the first two numbers equal to the third number (and so on), so we need to                     To create three variables to represent the first two numbers and the third number, and assign the latter number to the previous number                     The numbers go back one by one

```#include <stdio.h>
int main()
{
int n=0;
int a=1;
int b=1;//Because the first and second Fibonacci series do not need to be calculated, it can be given
int c=0;
scanf("%d",&n);//Use n to receive the value of the Fibonacci sequence you want to query

a=b;
b=c;//Add backward in turn by assigning values to each other
}```

## 2.3 how to realize Fibonacci sequence by using loop

From the code of 2.2, we have written out the overall running rules, but if we want to query the Fibonacci number later, we can                   These rules need to be repeated, so we need to use the loop to calculate which result we want

```#include <stdio.h>
int main()
{
int n=0;
int a=1;
int b=1;//Because the first and second Fibonacci series do not need to be calculated, it can be given
int c=0;
scanf("%d",&n);//Use n to receive the value of the Fibonacci sequence you want to query
while()//So far, how to enter the cycle is unknown
{
a=b;
b=c;//Add backward in turn by assigning values to each other
}
}```

## 2.4 how to enter the cycle

From the above code, we move the number back and calculate it from the third number, so

We enter the loop from three to calculate (because the first number and the second number are given)

```#include <stdio.h>
int main()
{
int n=0;
int a=1;
int b=1;
int c=0;
scanf("%d",&n);
while(n>2)//n is calculated from the third
{
c=a+b;
a=b;
b=c;
}
}```

## two point five   How to jump out of a loop

Take chestnuts: for example, we have to wash 10 clothes. How can we calculate that we have completed the task? Of course, the clothes are light

Similarly, when do we jump out of the loop? Of course, when the loop executes light. When n is given again

In fact, it has been determined after recycling several times. After recycling once, we will throw away the recycled (minus one)

Until it can't cycle (that is, when n is 2, it doesn't need to be calculated, that is, it doesn't need to cycle)

```#include <stdio.h>
int main()
{
int n=0;
int a=1;
int b=1;
int c=0;
scanf("%d",&n);
while(n>2)
{
c=a+b;
a=b;
b=c;
n--;//Until no cycle is required
}
printf("%d",c);
}```

# At this time, there is no need to enter the loop to output c, and the value will be wrong, so directly changing c to one will not affect the operation and the result

```#include <stdio.h>
int main()
{
int n=0;
int a=1;
int b=1;
int c=1;
scanf("%d",&n);
while(n>2)
{
c=a+b;
a=b;
b=c;
n--;//Until no cycle is required
}
printf("%d",c);
}```

For a superficial understanding of Fibonacci sequence, I hope all leaders can guide me

Topics: C