কম্পিউটার

n-তম ফিবোনাচি সংখ্যা 10 এর একাধিক কিনা তা পরীক্ষা করার একটি কার্যকর উপায়?


এখানে আমরা nth Fibonacci শব্দটি 10 ​​এর একাধিক কি না তা পরীক্ষা করার একটি কার্যকর উপায় দেখব। ধরুন ফিবোনাচি পদগুলি হল {0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987}৷ তাই এখানে 15 th (0 থেকে গণনা) ফিবোনাচি শব্দটি 10 ​​দ্বারা বিভাজ্য। 16 এর জন্য এটি সত্য হবে।

একটি সবচেয়ে সহজ পদ্ধতি হল প্রদত্ত টার্ম পর্যন্ত ফিবোনাচি সংখ্যা তৈরি করা এবং পরীক্ষা করে দেখুন এটি 10 ​​দ্বারা বিভাজ্য কি না? কিন্তু এই সমাধানটি ভাল নয়, কারণ এটি বড় পদের জন্য কাজ করবে না।

আরেকটি ভালো পদ্ধতি হল নিচের মত -

ফিবোনাচি পদ − 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987

এই সংখ্যাগুলি (মোটা অক্ষর হিসাবে চিহ্নিত) 2 দ্বারা বিভাজ্য। এবং তাদের ব্যবধানগুলি 3টি ফিবোনাচি পদ। একইভাবে, অনুগ্রহ করে চেক করুন −

ফিবোনাচি পদ:0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987

প্রতি 5ম পদ 5 দ্বারা বিভাজ্য। এখন 3 এবং 5 এর LCM হল 15। তাই আমরা বলতে পারি যে প্রতি 15 th ফিবোনাচি পদ 10 দ্বারা বিভাজ্য।

আসুন ধারণা পেতে অ্যালগরিদম দেখি।

অ্যালগরিদম

fiboDivTen(টার্ম)

Begin
   if term is divisible by 15, then
      return true
   end if
   return false
End

উদাহরণ

#include<iostream>
using namespace std;
bool fiboDivTen(int term) {
   if(term % 15 == 0){
      return true;
   }
   return false;
}
int main() {
   int term = 45;
   if (fiboDivTen(term))
      cout << "Divisible";
   else
      cout << "Not Divisible";
}

আউটপুট

Divisible

  1. প্রদত্ত নম্বর চেক করার প্রোগ্রাম পাইথনে একটি ফিবোনাচি শব্দ

  2. পাইথনে একটি সংখ্যার বিজোড় স্থানে অঙ্কের যোগফল K দ্বারা বিভাজ্য কিনা তা পরীক্ষা করুন

  3. একটি সংখ্যার জোড় স্থানে অঙ্কের গুণফল পাইথনে K দ্বারা বিভাজ্য কিনা তা পরীক্ষা করুন

  4. পাইথন প্রোগ্রামে N-তম ফিবোনাচি নম্বর