C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

級数の合計1^2 + 3 ^ 2 + 5 ^2+。 。 。 +(2 * n-1)^ 2(C ++の場合)


この問題では、シリーズの番号nが与えられます。私たちのタスクは、与えられたnの値に対して級数1 ^ 2 + 3 ^ 2 + 5 ^ 2 + ... +(2 * n-1)^2の合計を見つけることです。

問題を理解するために例を見てみましょう

入力

n = 5

出力

84

説明

sum = 1^2 + 3^2 + 5^2 + 7^2 + 9^2
= 1 + 9 + 25 + 49 = 84

この問題を解決するための基本的なアプローチは、級数の合計の式を直接適用することです。

#include <iostream>
using namespace std;
int calcSumOfSeries(int n) {
   int sum = 0;
   for (int i = 1; i <= n; i++)
   sum += (2*i-1) * (2*i-1);
   return sum;
}
int main() {
   int n = 5;
   cout<<"The sum of series up to "<<n<<" is "<<calcSumOfSeries(n);
   return 0;
}

出力

The sum of series up to 10 is 165

解決する別のアプローチは、数式を使用して級数の合計を見つけることです。

合計は、

1^2 + 3^2 + 5^2 + … + (2*n - 1)^2 =
{(n * (2*(n-1)) * (2*(n+1)))/3}

#include <iostream>
using namespace std;
int calcSumOfSeries(int n) {
   return (n * (2 * n - 1) * (2 * n + 1)) / 3;
}
int main() {
   int n = 5;
   cout<<"The sum of series up to "<<n<<" is "<<calcSumOfSeries(n);
   return 0;
}

出力

The sum of series up to 5 is 165

  1. 算術級数の合計のためのC++プログラム

    「a」(第1項)、「d」(共通の差)、「n」(文字列内の値の数)が与えられ、タスクは級数を生成し、それによってそれらの合計を計算することです。 算術級数とは 算術級数は、シリーズの最初の項が「a」で固定され、それらの間の一般的な違いが「d」である、共通の違いを持つ数列です。 -として表されます a、a + d、a + 2d、a + 3d 、。 。 。 例 Input-: a = 1.5, d = 0.5, n=10 Output-: sum of series A.P is : 37.5 Input : a = 2.5, d = 1.5, n = 20 Output : sum of s

  2. C ++でのアリコートの合計?

    ここで、アリコートの合計は何ですか? nのアリコート和は、nを除くnのすべての完全な因子の合計です。たとえば、数値が20の場合、完全な因数は(1、2、4、5、10)です。したがって、アリコートの合計は22です。 興味深い事実の1つは、ある数のアリコートの合計がその数そのものである場合、その数は完全数であるということです。たとえば、6。係数は(1、2、3)です。アリコートの合計は1+2 + 3=6です。 次のアルゴリズムを使用してアリコートの合計を取得する方法を見てみましょう。 アルゴリズム getAliquotSum(n) begin    sum := 0 &nbs