এই নিবন্ধে আমরা n-তম ফিবোনাচ্চি সংখ্যা গণনা করব।
একটি ফিবোনাচ্চি সংখ্যা নিচের রিকারেন্স রিলেশন দ্বারা ডিফাইন করা হয়:
Fn = Fn-1 + Fn-2
সাথে F₀ = 0 এবং F₁ = 1।
প্রথম কয়েকটি ফিবোনাচ্চি সংখ্যা হলো:
0, 1, 1, 2, 3, 5, 8, 13, ................
আমরা ফিবোনাচ্চি সংখ্যাগুলো রিকারশন এবং ডাইনামিক প্রোগ্রামিং মেথড ব্যবহার করে গণনা করতে পারি।
এখন পাইথন স্ক্রিপ্টের রূপে বাস্তবায়নটি দেখা যাক:
অপ্রোচ ১: রিকারশন মেথড
উদাহরণ
# রিকারসিভ অপ্রোচ
def Fibonacci(n):
if n < 0:
print("Fibbonacci can't be computed")
# প্রথম ফিবোনাচ্চি সংখ্যা
elif n == 1:
return 0
# دوم ফিবোনাচ্চি সংখ্যা
elif n == 2:
return 1
else:
return Fibonacci(n-1) + Fibonacci(n-2)
# মেইন
n = 10
print(Fibonacci(n))
আউটপুট
34
ডিক্লেয়ার করা সকল ভেরিয়েবলের স্কোপ নিচে দেখানো হয়েছে।

অপ্রোচ ২: ডাইনামিক প্রোগ্রামিং মেথড
উদাহরণ
# ডাইনামিক অপ্রোচ
Fib_Array = [0, 1]
def fibonacci(n):
if n < 0:
print("Fibbonacci can't be computed")
elif n <= len(Fib_Array):
return Fib_Array[n-1]
else:
temp = fibonacci(n-1) + fibonacci(n-2)
Fib_Array.append(temp)
return temp
# ড্রাইভার প্রোগ্রাম
n = 10
print(fibonacci(n))
আউটপুট
34
ডিক্লেয়ার করা সকল ভেরিয়েবলের স্কোপ নিচে দেখানো হয়েছে।

উপসংহার
এই নিবন্ধে আমরা রিকারশন এবং ডাইনামিক প্রোগ্রামিং অপ্রোচ ব্যবহার করে n-তম ফিবোনাচ্চি সংখ্যা গণনা শিখেছি।