C# | ゼロからはじめるプログラミング、30日で基礎を学ぶC#:基礎文法を学ぶ - Day6:配列

C# 30日で身につけるC#
スポンサーリンク
スポンサーリンク

Day6 後半のゴール

Day6 後半では、前半で学んだ 配列・添字・Length・多次元配列 を実際の計算処理に応用しながら、 「配列を使うとデータ処理がどれほど効率的になるのか」を体験していただきます。

扱う題材は次の四つです。

合計 最大値 最小値 平均値

どれもプログラミングで頻繁に使われる処理であり、 配列とループを組み合わせることで一気に理解が深まります。

合計を求める処理を作る

配列の全要素を足し合わせる基本パターンです

まず、点数の配列を用意します。

int[] scores = { 80, 75, 90, 60, 88 };
C#

合計を求めるには、配列の要素を順番に取り出して足し合わせます。

int total = 0;

for (int i = 0; i < scores.Length; i++)
{
    total += scores[i];
}

Console.WriteLine("合計: " + total);
C#

ここで深掘りしたいポイントは、 Length を使うことで配列のサイズが変わっても安全に処理できる という点です。

固定値(5など)を書いてしまうと、配列のサイズが変わったときにバグになります。

最大値を求める処理を作る

「最初の要素を基準にする」ことが重要です

最大値を求めるには、まず配列の最初の値を基準にします。

int[] scores = { 80, 75, 90, 60, 88 };

int max = scores[0];

for (int i = 1; i < scores.Length; i++)
{
    if (scores[i] > max)
        max = scores[i];
}

Console.WriteLine("最大値: " + max);
C#

ここで深掘りしたいポイントは、 max を 0 にしてはいけない場合がある ということです。

例えば、配列がすべて負の値だった場合、 max = 0 にしてしまうと正しい結果になりません。

そのため、 「最初の要素を基準にする」 という書き方が最も安全です。

最小値を求める処理を作る

最大値と同じ考え方で「最初の要素を基準にする」

最小値も同じ考え方で求めます。

int[] scores = { 80, 75, 90, 60, 88 };

int min = scores[0];

for (int i = 1; i < scores.Length; i++)
{
    if (scores[i] < min)
        min = scores[i];
}

Console.WriteLine("最小値: " + min);
C#

最大値と同様、 min を 0 にすると正しい結果にならない場合がある ため、必ず最初の要素を基準にします。

平均値を求める処理を作る

合計 ÷ 要素数(Length)で求めます

平均値は合計を求めてから Length で割ります。

int[] scores = { 80, 75, 90, 60, 88 };

int total = 0;

for (int i = 0; i < scores.Length; i++)
{
    total += scores[i];
}

double average = (double)total / scores.Length;

Console.WriteLine("平均値: " + average);
C#

ここで深掘りしたいポイントは、 整数同士の割り算は小数点が切り捨てられる という点です。

そのため、 (double)total のようにキャストして 「小数として割り算する」必要があります。

多次元配列を使った計算の応用

2×3 の表の合計を求める例

int[,] table = {
    { 1, 2, 3 },
    { 4, 5, 6 }
};

int total = 0;

for (int i = 0; i < 2; i++)
{
    for (int j = 0; j < 3; j++)
    {
        total += table[i, j];
    }
}

Console.WriteLine("合計: " + total);
C#

ここで深掘りしたいポイントは、 多次元配列は添字が二つ必要になる という点です。

1次元配列よりも複雑になりますが、 表形式のデータを扱うときに非常に便利です。

Day6 後半のまとめ

Day6 後半では、配列を使った代表的な計算処理を学びました。

合計 → 全要素を足し合わせる 最大値 → 最初の要素を基準に比較する 最小値 → 最初の要素を基準に比較する 平均値 → 合計 ÷ Length 多次元配列 → 添字が二つ必要

タイトルとURLをコピーしました