এই সমস্যায়, আমাদের একটি সংখ্যা N দেওয়া হয়েছে। আমাদের কাজ হল সিরিজ 1, 2, 11, 12, 21...-এর N-তম পদ বের করার প্রোগ্রাম তৈরি করা C++-এ।
সমস্যা বিবরণ
সিরিজের Nth পদ বের করতে −
1, 2, 11, 12, 21, 22, 111, 112, .... Nপদ
আমরা সিরিজের সাধারণ পদ খুঁজে বের করব।
একটি উদাহরণ নিয়ে সমস্যাটি বুঝি,
ইনপুট
N = 8
আউটপুট
112
সমাধান পদ্ধতি
সাধারণ পদ বের করতে, আমাদের সিরিজটিকে ঘনিষ্ঠভাবে পর্যবেক্ষণ করতে হবে। এই সিরিজে, আমরা দেখতে পাচ্ছি যে মানগুলিতে শুধু ১ এবং ২ রয়েছে। এবং প্রতিটি পদ ১ এবং ২-এর বاري-बারি। তাই সাধারণ পদ হবে,
$$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