এই সমস্যায়, আমাদের একটি নম্বর দেওয়া হয়েছে। আমাদের কাজ হল সি++-এ সিরিজ 1, 2, 11, 12, 21… এর N-তম পদ খুঁজে বের করার জন্য একটি প্রোগ্রাম তৈরি করা।
সমস্যা বর্ণনা
সিরিজের Nম পদ খুঁজে পেতে −
1, 2, 11, 12, 21, 22, 111, 112, .... শর্তাবলী
আমরা সিরিজের সাধারণ শব্দটি খুঁজে পাব।
সমস্যাটি বোঝার জন্য একটি উদাহরণ নেওয়া যাক,
ইনপুট
N =8
আউটপুট
112
সমাধান পদ্ধতি
সাধারণ শব্দটি বের করার জন্য, আমাদের সিরিজটি ঘনিষ্ঠভাবে পর্যবেক্ষণ করতে হবে। এই সিরিজে, আমরা দেখতে পাচ্ছি যে শুধুমাত্র 1 এবং 2 এর মান রয়েছে। এবং প্রতিটি পদ হল 1 এবং 2 এর বিকল্প। সুতরাং, সাধারণ শব্দটি হবে,
$$T_{(N)}=T_{(n/2)}*10 + 1,\:if\:N\:is\:odd.$$
$$T_{(N)}=T_{((n/2)-1)}*10 + 2, if\:N\:is\:even.$$
উদাহরণ
#include <iostream> using namespace std; int findNTerm(int N) { if(N == 1) return 1; if(N == 2) return 2; int value; if(N%2 == 0){ value = (findNTerm((N/2)-1)*10) + 2; } else value = (findNTerm((N/2))*10) + 1; return value; } int main() { int N = 12; cout<<N<<"Th term of the series is "<<findNTerm(N); return 0; }
আউটপুট
12Th term of the series is 212