এই সমস্যায়, আমাদের একটি সংখ্যা N দেওয়া হয়েছে। আমাদের কাজ হল সিরিজ 1, 3, 12, 60, 360...-এর N-তম পদ বের করার প্রোগ্রাম তৈরি করা C++-এ।
দिए गए সিরিজ
1, 3, 12, 60, 360, 2520 … N পদ
একটি উদাহরণ নিয়ে সমস্যাটি বুঝি,
ইনপুট − N = 6
আউটপুট − 2520
সমাধান পদ্ধতি:
এটার সাধারণ পদ সূত্র কিছুটা জটিল। সিরিজের মানগুলোর বৃদ্ধি বিশাল। তাই ফ্যাক্টোরিয়াল বা এক্সপোনেনশিয়াল হতে পারে। আমরা প্রথমে ফ্যাক্টোরিয়াল বিবেচনা করব, এবং পর্যবেক্ষণ করলে দেখা যাবে বৃদ্ধি ফ্যাক্টোরিয়াল মানের অর্ধেক। এছাড়াও, ২-এর ফ্যাক্টোরিয়াল এখানে প্রথম পদ। তাই সাধারণ সূত্র হবে,
TN = ((N+1)!)/ 2
আমাদের সমাধানের কাজকর্মকে স্পষ্ট করার প্রোগ্রাম,
#include <iostream> using namespace std; int calcFact(int n){ if(n == 1){ return 1; } return (n*calcFact(n-1)); } int findNTerm(int N) { int nthTerm = ( (calcFact(N+1)) /2 ); return nthTerm; } int main() { int N = 8; cout<<N<<"th term of the series is "<<findNTerm(N); return 0; }আউটপুট:
8th term of the series is 181440