এই সমস্যাতে, আমাদের একটি সংখ্যা N দেওয়া আছে। আমাদের কাজ হল C++-এ সিরিজ 2, 4, 3, 4, 15...-এর N-তম টার্ম বের করার প্রোগ্রাম লিখা।
সমস্যা বর্ণনা: সিরিজ 2, 4, 3, 4, 15, 0, 14, 16 .... N terms এর যোগফল/টার্ম বের করতে হবে। সিরিজের জেনারেল টার্মের ফর্মুলা খুঁজে বের করব।
উদাহরণ:
ইনপুট: N = 9 → আউটপুট: 9
সমাধানের পদ্ধতি
সিরিজের মানগুলো লিনিয়ার বাড়ছে না, এখানে ২ এবং ৩ দিয়ে ভাগশেষ (modulo) ব্যবহার হয়েছে। প্রতিটি টার্মকে তার পজিশন N দিয়ে ভাগ করে দেখলে প্যাটার্ন পাওয়া যায়:
Series: 1*(2), 2*(2), 3*(1), 4*(1), 5*(3), 6*(0), ...
জেনারেল ফর্মুলা: Tn = N * ((N%2) + (N%3))
প্রোগ্রাম
#include <iostream>
using namespace std;
int findNTerm(int N) {
int nthTerm = (N * ((N % 2) + (N % 3)));
return nthTerm;
}
int main() {
int N = 10;
cout << N << "th term of the series is " << findNTerm(N);
return 0;
}
আউটপুট:
10th term of the series is 10