Fibonacci
- 
n- fibonacci sonin-1van-2fibonacci sonlari yig'indisiga teng.
- dastlabki 2 ta fibonacci sonlar 0va1ga teng.
Dastlabki 10 ta fibonacci sonlarni hisoblab chop etadigan dastur tuzing.
int a = 0, b = 1, c = a + b;
cout << a << " " << b << " " << c << " ";
- yuqorida dastlabki 3 ta fibonacci sonlar hisoblab chop etilgan
Keyingi fibonacci sonni hisoblab topish uchun so'ngi ikkita fibonacci sonlar b va cni qo'shish kerak.
Lekin bu usul optimal kod emas, chunki yuqoridagi algoritm reusable emas. Ya'ni yuqoridagi algoritmni qaytarish orqali keyingi fibonaccini topib bo'lmaydi.
Quyidagi kodga qarang:
b = c;
a = b;
c = a + b;
cout << c << " ";
Yuqoridagi kod optimal algoritm. Keyingi fibonaccini topish uchun yuqoridagi kodni shunchaki copy/paste qilish kifoya.
Barcha kod
int a = 0, b = 1, c = a + b;
cout << a << " " << b << " " << c << " "; // dastlabki 3 ta fibonacci
b = c;
a = b;
c = a + b;
cout << c << " ";   // 4-fibonacci
b = c;
a = b;
c = a + b;
cout << c << " ";   // 5-fibonacci
b = c;
a = b;
c = a + b;
cout << c << " ";   // 6-fibonacci
b = c;
a = b;
c = a + b;
cout << c << " ";   // 7-fibonacci
b = c;
a = b;
c = a + b;
cout << c << " ";   // 8-fibonacci
b = c;
a = b;
c = a + b;
cout << c << " ";   // 9-fibonacci
b = c;
a = b;
c = a + b;
cout << c << " ";   // 10-fibonacci
 
 
              
 
    
Top comments (0)