配列内の整数値の合計を求める
配列内の整数値の合計値を求めてみます。
・配列とは同じ変数名の変数を複数個を用意して、
繰り返し制御等を利用して連続的な処理を可能とします。
配列を簡単に解説しておきます。
・配列宣言は、
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 と表示されます。
※この画面は、何かのキーを打鍵することで閉じることができます。