কম্পিউটার টিউটোরিয়াল

C++-এ সিরিজ 1 + (1+2) + (1+2+3) + ... + (1+2+3+...+n) এর যোগফল


এই সমস্যায়, আমাদের একটি সংখ্যা n দেওয়া আছে। আমাদের কাজ হল সিরিজ 1 + (1+2) + (1+2+3) + (1+2+3+4) + … + (1+2+3+4+...+n) এর যোগফল বের করার একটি প্রোগ্রাম তৈরি করা।

উদাহরণ দিয়ে বোঝা যাক

ইনপুট

n = 4

আউটপুট

20

ব্যাখ্যা - (1) + (1+2) + (1+2+3) + (1+2+3+4) = 20

এই সমস্যা সমাধানের একটি সহজ পদ্ধতি হল দুটি লুপ ব্যবহার করে সিরিজ তৈরি করা।

আলগরিদম

যোগফল = 0 আরম্ভ করুন
ধাপ ১: i = 1 থেকে n পর্যন্ত লুপ। অর্থাৎ i = 1 to i <= n।
    ধাপ ১.১: j = 1 থেকে i পর্যন্ত লুপ। অর্থাৎ j = 1 to j <= i।
    ধাপ ১.১.১: যোগফল আপডেট করুন। অর্থাৎ sum += j।
ধাপ ২: যোগফল ফেরত দিন।

C++ প্রোগ্রাম উদাহরণ (নেস্টেড লুপ পদ্ধতি)

#include <iostream>
using namespace std;

int calcSeriesSum(int n) {
    int sum = 0;
    for (int i = 1 ; i <= n ; i++)
        for (int j = 1 ; j <= i ; j++)
            sum += j;
    return sum;
}

int main() {
    int n = 7;
    cout<<"Sum of the series 1 + (1+2) + (1+2+3) + (1+2+3+4) + ... + (1+2+3+4+...+"<<n<<") is "<<calcSeriesSum(n);
    return 0;
}

আউটপুট

Sum of the series 1 + (1+2) + (1+2+3) + (1+2+3+4) + ... + (1+2+3+4+...+7) is 84

কিন্তু এই পদ্ধতিটি দক্ষ নয়।

দক্ষ সমাধান: সাধারণ ফর্মুলা

যোগফল = 1 + (1+2) + (1+2+3) + (1+2+3+4) …
যোগফল = Σ ( (1+2+3+4+5+...) )
যোগফল = Σ ( n(n+1)/2)
যোগফল = ½ Σ ( n² + n) = ½ ( Σ(n²) + Σ n)
যোগফল = ½ [ (n(n+1)(2n+1))/6 ) + ½ ( n(n+1)/2 ]
যোগফল = ½ [ (n(n+1))/2 ( (2n+1)/3 + 1) ]
যোগফল = ½ [ ((n(n+1))/2) * (2n + 4)/3 ]
যোগফল = ½ [ (n(n+1)(2n+4))/6]
যোগফল = (n(n + 1)(2n + 4))/12

C++ প্রোগ্রাম উদাহরণ (ফর্মুলা পদ্ধতি)

#include <iostream>
using namespace std;

int calcSeriesSum(int n) {
    return (n*(n + 1)*(2*n + 4))/12;
}

int main() {
    int n = 7;
    cout<<"Sum of the series 1 + (1+2) + (1+2+3) + (1+2+3+4) + ... + (1+2+3+4+...+"<<n<<") is "<<calcSeriesSum(n);
}

আউটপুট

Sum of the series 1 + (1+2) + (1+2+3) + (1+2+3+4) + ... + (1+2+3+4+...+7) is 84
  1. C++-এ সিরিজ 0.7, 0.77, 0.777 … n টার্ম পর্যন্ত যোগফল

  2. C++-এ সিরিজ যোগফল: 1 + 2+2 + 3+3+3 + ... + n

  3. C++-এ arr[i]*i এর যোগফল সর্বাধিক করা

  4. C++ প্রোগ্রাম: সমান্তরাল শ্রেণির যোগফল