ফিবোনাচ্চি সিকোয়েন্স (Fibonacci sequence) এরূপ:
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55,...
এই সিকোয়েন্সে nth টার্ম হলো (n-1)th এবং (n-2)th টার্মের যোগফল।
রিকার্সিভ আপনোয় ব্যবহার করে জেনারেট করা যায়, কিন্তু ডাইনামিক প্রোগ্রামিং-এ প্রসিডিউর সহজ। এটি সকল ফিবোনাচ্চি সংখ্যা একটি টেবিলে স্টোর করে, সেই টেবিল ব্যবহার করে সহজেই সিকোয়েন্সের পরবর্তী টার্মগুলো জেনারেট করতে পারে।
ইনপুট − টার্ম নম্বর ইনপুট নিন। মান लो ১০।
আউটপুট − ১০ম ফিবোনাচ্চি টার্ম হল ৫৫।
অ্যালগরিদম
genFiboSeries(n)
ইনপুট: সর্বোচ্চ টার্মের সংখ্যা।
আউটপুট: nth ফিবোনাচ্চি টার্ম।
শুরু
fibo নামক অ্যারে ডিফাইন করুন সাইজ n+2
fibo[0] := 0
fibo[1] := 1
i := 2 থেকে n পর্যন্ত
fibo[i] := fibo[i-1] + fibo[i-2]
inished
fibo[n] ফেরত দাও
শেষ
উদাহরণ কোড
#include <iostream>
using namespace std;
int genFibonacci(int n) {
int fibo[n+2];
fibo[0] = 0;
fibo[1] = 1;
for (int i = 2; i <= n; i++) {
fibo[i] = fibo[i-1] + fibo[i-2];
}
return fibo[n];
}
int main() {
int n;
cout << "টার্মের সংখ্যা দিন: ";
cin >> n;
cout << n << " তম ফিবোনাচ্চি টার্ম: " << genFibonacci(n) << endl;
}
আউটপুট
টার্মের সংখ্যা দিন: 10 10 তম ফিবোনাচ্চি টার্ম: 55