今日の人気記事

  1. エスケープシーケンス - 特殊文字
  2. continue文 - ループをスキップ
  3. 入力した行列の積(掛け算)を計算する
  4. 四則演算 - 算術演算子
  5. LinuxでC言語 - コンパイラ(gcc)のインストール

級数の和を計算する - 1^2+2^2+3^2+...+n^2

当ページのリンクには広告が含まれています。

スポンサーリンク

次の級数の和を計算するサンプルプログラムを紹介します。

$$ 1^2 + 2^2 + 3^2 + \cdots + n^2 $$

この級数の和は

\begin{aligned} \sum^{n}_{k=1} k^2 &= 1^2 + 2^2 + 3^2 + \cdots + n^2 \\ &= \frac{n(n+1)(2n+1)}{6} \end{aligned}

と計算できます。

いくつかの例をみてみましょう。

例①

例えば、n=3 の場合は

\begin{aligned} \sum^{n}_{k=1} k^2 &= \frac{n(n+1)(2n+1)}{6} \\ &= \frac{3 \cdot 4 \cdot 7}{6} \\ &= 14 \end{aligned}

と計算することができます。

例②

例えば、n=4 の場合は

\begin{aligned} \sum^{n}_{k=1} k^2 &= \frac{n(n+1)(2n+1)}{6} \\ &= \frac{4 \cdot 5 \cdot 9}{6} \\ &= 30 \end{aligned}

と計算することができます。

サンプルプログラム

それでは級数(1^2+2^2+…+n^2)の和を計算するサンプルプログラムを紹介します。

/*
 * C言語のサンプルプログラム - Webkaru
 * - 級数の和を計算 - 1^2+2^2+3^2+...+n^2 -
 */
#include <stdio.h>

int main(void){

  int i;

  /* 級数 */
  int n, sum;

  /* n の入力 */
  printf("級数(1^2+2^2+…+n^2)の和を計算します。\n");
  printf("nを入力してください = ");
  scanf("%d", &n);

  /* 級数の和を計算 */
  sum = (n * (n + 1) * (2 * n + 1 )) / 6;

  printf("級数の和 = %d\n", sum);

  return 0;
}

サンプルプログラムで使っている構文

実行結果

いくつかの実行結果です。

級数(1^2+2^2+…+n^2)の和を計算します。
nを入力してください = 3
級数の和 = 14
級数(1^2+2^2+…+n^2)の和を計算します。
nを入力してください = 4
級数の和 = 30
級数(1^2+2^2+…+n^2)の和を計算します。
nを入力してください = 10
級数の和 = 385

このように入力した「n」から級数の和を計算します。

サンプルプログラム の人気記事

  1. 10進数を2進数に変換する
  2. 入力した自然数の階乗を計算する
  3. 入力した2つの数値の掛け算・割り算する
  4. 配列に格納した数値を昇順ソートする
  5. 入力した行列の積(掛け算)を計算する
  6. for文 - 1つ飛ばしの繰り返し処理を実行する(奇数・偶数)
  7. サンプルプログラム集
  8. フィボナッチ数の計算する
  9. 2次方程式の解を計算する
  10. 入力した文字がアルファベットか数字かを判定する

関連記事(一部広告含む)