今日の人気記事

  1. printf関数の変換指定子
  2. 2進数を10進数に変換する
  3. 条件演算子(3項演算子)「? :」
  4. int main(void) - プログラムの基本
  5. while文 - 繰り返し処理

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

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

スポンサーリンク

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

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

この級数の和は

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

と計算できます。

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

例①

例えば、n=3 の場合は

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

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

例②

例えば、n=4 の場合は

\begin{aligned} \sum^{n}_{k=1} k^3 &= \left( \frac{n(n+1)}{2} \right)^2 \\ &= \left( \frac{4(4+1)}{2} \right)^2 \\ &= 100 \end{aligned}

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

サンプルプログラム

それではサンプルプログラムをみてみましょう。

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

int main(void){

  int i;

  /* 級数 */
  int n, sum;

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

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

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

  return 0;
}

実行結果

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

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

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

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

  1. サンプルプログラム集
  2. 2進数を10進数に変換する
  3. 配列に格納した数値を昇順ソートする
  4. 入力した行列の積(掛け算)を計算する
  5. 入力したアルファベットを小文字から大文字に変換する
  6. 入力した整数が偶数か奇数かを判別する
  7. 10進数を2進数に変換する
  8. 入力した数値の桁数を表示する
  9. 三角形の面積を計算する
  10. 配列に格納した数値を降順ソートする

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