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

級数の和を求める:1² + 3² + 5² + … + (2n−1)²

級数とは、何らかの共通の規則に従って並べられた数の列のことです。数学における級数は、一定の論理に基づいて定義されます。例えば、各項が同じ間隔で増加する「等差数列」、各項が同じ倍数で増加する「等比数列」など、さまざまなパターンが存在します。

級数の和を求めるには、級数の規則性を分析し、一般的な公式を導き出すことが理想的です。しかし、本題の級数には単純な共通の宣言がないため、ここでは各項を順番に合計変数へ加算していく古典的なアプローチを用います。

具体例を挙げて、ロジックをより明確にしてみましょう。

最初の7項までの級数の和:
sum(7) = 12 + 32 + 52 + 72 + 92 + 112 + 132 = 455

なお、数学的には最初のn個の奇数の2乗の和は、次の公式で一括して求めることも可能です。

Sum = n × (2n − 1) × (2n + 1) / 3

n = 7 の場合:7 × 13 × 15 ÷ 3 = 455 となり、先ほどの計算結果と一致します。

プログラム例

以下は、C言語でこの級数の和を計算するプログラムの例です。

#include <stdio.h>
int main() {
    int i, n, sum = 0;
    n = 17;
    for (i = 1; i <= n; i++) {
        sum = sum + (2 * i - 1) * (2 * i - 1);
    }
    printf("The sum of series upto %d is %d", n, sum);
}

出力結果

The sum of series upto 17 is 6545

このプログラムでは、n = 17 として、12 から 332 までの17個の奇数の2乗を順に加算しています。その結果、6545 という合計値が出力されます。ループ内で (2 * i - 1) を計算することで、i 番目の奇数を求め、その2乗を合計に加えている点がポイントです。

  1. C言語で等比数列の和を求めるプログラムの書き方【初心者向け解説】

    このプログラムでは、3つの入力値を受け取ります。1つ目は「a」(等比数列の初項)、2つ目は「r」(公比)、3つ目は「n」(和を求める項数)です。 等比数列とは、隣り合う項同士の比が常に一定である数列のことです。入力された「a」「r」「n」をもとに、a, ar, ar2, ar3, ar4, … という等比数列を生成し、その総和 a + ar + ar2 + ar3 + ar4 + … を計算します。 入力例1 a = 1 r = 0.5 n = 5 出力例1 1.937500 入力例2 a = 2 r = 2.0 n = 8 出力例2 510.000000 問題を解くためのアプローチ 入力値

  2. C言語でcos(x)級数の合計を計算するプログラム

    本記事では、角度 x と項数 n が与えられたときに、cos(x)級数の合計を求めるC言語プログラムを解説します。ここで、x は余弦(コサイン)を求める角度、n は cos(x) 級数に含める項の数を表します。cos(x)とはcos(x) は三角関数の一つで、角度 x に対する余弦の値を計算するために使用される関数です。単位円上では、角度 x における点の x座標が cos(x) の値に対応します。数式cos(x) は以下のように無限級数(マクローリン展開)で表すことができます。$$\cos (x) = \displaystyle\sum\limits_{k=0}^\infty \frac{(