কম্পিউটার

C++ এ স্টার্নের ডায়াটমিক সিরিজ থেকে n-তম উপাদান খুঁজুন


এখানে আমরা দেখব কিভাবে Stern’s Diatomic সিরিজে nth শব্দটি বের করা যায়। সিরিজটি হল 0, 1, 1, 2, 1, 3, 2, 3, 1, 4, 3, 5, 2, 5, 3, 4, … এটি fusc ফাংশন নামেও পরিচিত। এই সিরিজটিকে −

হিসাবে সংজ্ঞায়িত করা যেতে পারে

𝑝(𝑛)=$p\lgroup\frac{n}{2}\rgroup$ 𝑤ℎ𝑒𝑛 𝑛 𝑖𝑠 𝑒𝑣𝑒𝑛

𝑝(𝑛)=$p\lgroup\frac{n-1}{2}\rgroup+p\lgroup\frac{n+1}{2}\rgroup$ 𝑤ℎ𝑒𝑛 𝑛 𝑖𝑠 𝑜𝑑𝑠 𝑜𝑑𝑠

𝑝(0)=0 𝑎𝑛𝑑 𝑝(1)=1

এখানে আমরা গণনার সংখ্যা কমাতে ডায়নামিক প্রোগ্রামিং পদ্ধতি ব্যবহার করব। p(0) এবং p(1) এর জন্য বেস কেস সংরক্ষণ করার পরে, আমরা সূচক i =2 থেকে n এ পুনরাবৃত্তি করব এবং p(i) গণনা করব

উদাহরণ

#include<iostream>
using namespace std;
int findTerm(int n) {
   int table[n+1];
   table[0] = 0;
   table[1] = 1;
   for (int i = 2; i <= n; i++) {
      if (i % 2 == 0)
         table[i] = table[i / 2];
      else
         table[i] = table[(i - 1) / 2] + table[(i + 1) / 2];
   }
   return table[n];
}
int main() {
   cout << 3 << " rd term is: " << findTerm(3) << endl;
   cout << 15 << " th term is: " << findTerm(15) << endl;
   cout << 20 << " th term is: " << findTerm(20) << endl;
}

আউটপুট

3 rd term is: 2
15 th term is: 4
20 th term is: 3

  1. সি++-এ 0, 0, 2, 1, 4, 2, 6, 3, 8… সিরিজের N-তম পদ খুঁজে বের করার প্রোগ্রাম

  2. C++-এ a, b, b, c, c, c… সিরিজের N-তম পদ খুঁজে বের করার প্রোগ্রাম

  3. C++ এ সিরিজ 1, 2, 11, 12, 21… এর N-তম পদ খুঁজে বের করার প্রোগ্রাম

  4. সি++ এ সিরিজ 3, 5, 33, 35, 53… এর N-তম পদ খুঁজে বের করার প্রোগ্রাম