配列内の整数値の合計を求める

配列内の整数値の合計値を求めてみます。
・配列とは同じ変数名の変数を複数個を用意して、
 繰り返し制御等を利用して連続的な処理を可能とします。

配列を簡単に解説しておきます。
・配列宣言は、
 aという名前の変数を5個用意する
  int a[5];
 これで、
  a[0], a[1], a[2], a[3], a[4]
 という変数が用意され、この時のaを配列名といい、
 配列を構成する変数を要素といい、この数を要素数といいます。
 [ ]内の値を添え字といい、この添え字を使用して
 配列内のどの要素かを指定します。
 配列要素の添え字は 0 から始まります。
 配列宣言では、配列の値は指定した型で初期化されます。
 この場合は、int型なので各値は 0 で初期化されています。
 また、
  int a[ ] = { 1, 2, 3, 4, 5 };
 と宣言すると、
  a[0] 格納値は 1
  a[1] 格納値は 2
  a[2] 格納値は 3
  a[3] 格納値は 4
  a[4] 格納値は 5
 という配列が用意されます。
 これを初期化式付き配列宣言といい、
 初期式の値の数だけの配列要素が用意されます。
 この場合は、5個の配列要素で、要素数は 5 となります。
・配列を特定の数値で初期化する場合、
  int a[5];
  for( int i = 0; i < 5; i++ ) {
    a[ i ] = 10;
  }
 これで、配列宣言された配列aの各要素は、
 10 で初期化され、各要素に値として 10 が格納されます。
 このループでは、変数 i は 0~4まで繰り返され、
 各要素の添え字番号を指定し、a[0]~a[4]までに対応します。

 配列については
  Arduino編の 配列を使ってみる[二次元配列も](文法)
 でもう少し詳しく解説しています

では、配列内の整数値を加算して合計を求めみます。

・プロジェクトを作成します。
 Visual Studio 2022を起動し、
 新しいプロジェクトを作成します。
 ・プロジェクトタイプ:"コンソールアプリ"
 ・プロジェクト名:"ct_104_1"
 とします。

プロジェクトの作成
プロジェクトの作成

 ※プロジェクトの作成方法は、PCでC言語基礎編の
  ・1~100までの整数の加算結果を表示する
  ・2つの入力値(整数値)の四則演算結果を表示する
  を参考にして下さい。

・プログラム記述・編集画面が表示されるので、
 以下のプログラムを記述します。

プログラム記述前の編集画面
プログラム記述前の編集画面
プログラム記述後の編集画面
プログラム記述後の編集画面

 プログラムの記述内容

// 配列内の数値の合計を求める

#include <iostream>

int main()
{
    // 変数宣言と初期化
    int array[] = {1,2,3,4,5,6,7,8,9,10};
    int total = 0;
    int num;
 
    // array配列の要素数を取得
    num = sizeof(array) / sizeof(array[0]);

    // 配列内の数値を加算ループ
    for (int i = 0; i < num; i++) {
        total += array[i];
    }

    // 加算結果の表示
    printf("加算結果: %d\n", total);

    return EXIT_SUCCESS;
}

 簡単なプログラム解説です。

  ・変数宣言と初期化
  int array[] = { 1,2,3,4,5,6,7,8,9,10 };
   合計を求めるために使用する初期化付き配列宣言
   今回は、整数値 1~10を格納することにします。
  int total = 0;
   配列の合計を格納するための変数
  int num;
   ループ回数に利用する配列の要素数を格納するための変数

 ・array配列の要素数を取得
  num = sizeof(array) / sizeof(array[0]);
   この式によって、配列内の要素数を取得できます。
    配列のサイズを取得 sizeof(array)
    要素1個のサイズを取得 sizeof(array[0]);
    配列サイズを要素数1個のサイズで除算
     sizeof(array) / sizeof(array[0]);、
    することで配列の要素数(個数)を計算しています。

 ・配列内の数値を加算ループ
  for (int i = 0; i < num; i++) {
    total += array[i];
  }
   配列内の要素数分( 10 )だけ、添え字 0から9までループします。
   その都度、配列の添え字番号を、変数 i で指定し、
   指定位置の配列要素の値を、変数 total に加算します。

 ・加算結果の表示
  printf("加算結果: %d\n", total);
   変数 total に求めた加算結果を表示します。

 繰り返し制御文については、
  Arduino編の 制御文法を使う(反復)条件により処理を繰り返す
 でもう少し詳しく解説しています

・実行してみます。
 上段メニュー"デバッグ(D)"のサブメニューより、
 "デバッグなしで開始(H)"を選択します。

プログラムのビルド、実行指示
プログラムのビルド、実行指示

・実行結果は、デバッグコンソール画面が開き表示されます。
 ※この実行では、加算結果として、55 と表示されます。
 ※この画面は、何かのキーを打鍵することで閉じることができます。

実行結果(デバッグコンソール画面)
実行結果(デバッグコンソール画面)