Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

श्रृंखला का योग 1 + (1+2) + (1+2+3) + (1+2+3+4) + ... + (1+2+3+4+...+n) में सी++

इस समस्या में, हमें एक संख्या n दी गई है। हमारा कार्य 1 + (1+2) + (1+2+3) + (1+2+3+4) + … + (1+2+3+4 श्रृंखला का योग ज्ञात करने के लिए एक प्रोग्राम बनाना है। +...+एन)।

समस्या को समझने के लिए उदाहरण देते हैं,

इनपुट

n = 4

आउटपुट

20

स्पष्टीकरण - (1) + (1+2) + (1+2+3) + (1+2+3+4) =20

समस्या का एक सरल समाधान दो छोरों का उपयोग करके श्रृंखला बनाना होगा।

एल्गोरिदम

Initialize sum = 0
Step 1: Loop for i -> 1 to n i.e i = 1 to i <= n.
   Step 1.1: Loop for j -> 1 to i i.e. i = 1 to i <= i.
   Step 1.1.1: update sum i.e. sum += j.
Step 2: return sum.

उदाहरण

हमारे समाधान की कार्यप्रणाली को दर्शाने के लिए कार्यक्रम,

#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

लेकिन यह तरीका कारगर नहीं है।

श्रृंखला का योग ज्ञात करने के लिए सामान्य सूत्र प्राप्त करना एक प्रभावी समाधान हो सकता है।

sum = 1 + (1+2) + (1+2+3) + (1+2+3+4) …
sum = ∑ ( (1+2+3+4+5+...) )
sum = ∑ ( n(n+1)/2)
sum = ½ ∑ ( n^2 + n) = ½ (∑ (n2) + ∑ n)
sum = ½ [ (n(n+1)(2n+1))/6 ) + ½ ( n(n+1)/2 ]
sum = ½ [ (n(n+1))/2 ( (2n+1)/3 + 1) ]
sum = ½ [ ((n(n+1))/2) * (2n + 1 + 3)/3 ]
sum = ½ [ (n(n+1)(2n+4))/6]
sum = (n(n + 1)(2n + 4))/6

उदाहरण

हमारे समाधान की कार्यप्रणाली को दर्शाने के लिए कार्यक्रम,

#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. सी++ में श्रृंखला 1 + 2 + 2 + 3 + 3 + 3 + .. + n का योग ज्ञात करने का कार्यक्रम

    इस समस्या में, हमें एक संख्या n दी गई है जो श्रृंखला के उस nवें पद को दर्शाती है। हमारा काम एक सीरीज 1 + 2 + 2 + 3 +3 + 3 + .. + n C++ में योग खोजने के लिए प्रोग्राम बनाना है। । समस्या का विवरण - यहाँ, हम उस श्रेणी का योग ज्ञात करेंगे जिसका nवाँ पद संख्या n के योग का n गुना है। इसका मतलब है कि यह व

  1. C++ में arr[i]*i का योग अधिकतम करें

    समस्या कथन एन पूर्णांकों की एक सरणी को देखते हुए। आपको सरणी के तत्वों को पुनर्व्यवस्थित करने की अनुमति है। कार्य Σarr[i]*i का अधिकतम मान ज्ञात करना है, जहाँ i =0, 1, 2, .. n - 1. यदि इनपुट ऐरे ={4, 1, 6, 2} तो अधिकतम योग 28 होगा यदि हम क्रमबद्ध क्रम में तत्वों को पुनर्व्यवस्थित करते हैं- {1, 2, 4,

  1. C++ अंकगणितीय श्रृंखला के योग के लिए कार्यक्रम

    ए (प्रथम पद), डी (सामान्य अंतर) और एन (एक स्ट्रिंग में मानों की संख्या) के साथ दिया गया है और कार्य श्रृंखला उत्पन्न करना और उनके योग की गणना करना है। अंकगणित श्रृंखला क्या है अंकगणित श्रृंखला सामान्य अंतर वाली संख्याओं का अनुक्रम है जहां एक श्रृंखला का पहला पद ए तय होता है और उनके बीच सामान्य अंतर