ধরুন আমাদের একটি সংখ্যা আছে n বলে। ফিবোনাচি সিকোয়েন্সে n উপস্থিত আছে কি না তা আমাদের পরীক্ষা করতে হবে। আমরা ফিবোনাচি অনুক্রমে জানি f(i) =f(i-1) + f(i-2) প্রতিটি i-এর জন্য 2 থেকে n, এবং f(0) =0, f(1) =1.
সুতরাং, যদি ইনপুটটি n =13 এর মত হয়, তাহলে আউটপুটটি True হবে, যেমন ফিবোনাচ্চি সিকোয়েন্সের কিছু পদ হল:0, 1, 1, 2, 3, 5, 8, 13, 21, 34, তাই 34 বর্তমান .
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
- ফাই :=0.5 + 0.5 * (5.0) এর বর্গমূল
- a :=phi * n
- সত্য প্রত্যাবর্তন করুন যখন n 0 এর সমান হয় বা a একটি পূর্ণসংখ্যা হয়
উদাহরণ
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
from math import sqrt def solve(n): phi = 0.5 + 0.5 * 5.0**0.5 a = phi * n return n == 0 or abs(round(a) - a) < 1.0 / n n = 13 print(solve(n))
ইনপুট
13
আউটপুট
True