見出し画像

プログラミングの基本 〜アルゴリズムの具体例:配列の合計と最大値〜

プログラミングが学校で必修科目になりました。今後は世界で拡大するであろう「情報化社会」の中で、日本が存在感を発揮できることを期待する。そのための取り組みです。

プログラミングはどんな問題を扱うかで、使うべき言語が異なります。一方で、言語が異なれど必要な知識として共通する部分もあります。それは「アルゴリズム」および「データ構造」でした。

それぞれの基本的な話はこちらで紹介しました。

今回は「アルゴリズム」の具体例を紹介する話の2回目で、配列の合計と最大値を求めるアルゴリズムについて考えます。

プログラミングで配列を使うアルゴリズムは沢山ありますが、それらの基になる重要なアルゴリズムです。ぜひ覚えておきましょう。

配列の値の合計を求める

まずは、配列の数値を合計して結果を出力するアルゴリズムを見てみます。

配列の数値の合計は、配列の最初の値から最後の値までを足していき、その結果を出力するだけの単純なものです。具体的な処理は以下のようになります。ここで使われる配列の配列名はaとします。

  1. 合計値を入れる変数「sum」と配列の要素番号を表す変数nを用意し、それぞれに0を代入する。

  2. sumに配列an番目の要素を足す。

  3. nに1を足す。

  4. nが配列の最後の要素番号を超えていなければ、2番目の手順に戻る。

  5. 合計値として、変数sumの値を出力する。

以上が配列の数値の合計を求めるアルゴリズムの流れです。手順2〜4は繰り返しの構文であること、変数nが最後の要素番号を超えるまで繰り返すこと、この2点を忘れないようにします。

配列の最大値を求める

続いて、配列の最大値を探し出すアルゴリズムを紹介します。先ほどの合計を求める時と同様に、配列の名前をaとします。

  1. 最大値を入れる変数「max」と配列の要素番号を表す変数nを用意し、nに0を代入し、maxには配列aの0番目の値を入れる。

  2. nに1を足す。

  3. 変数maxan番目の要素を比較し、もしも後者の方が大きければ、maxにその値を代入する。

  4. nが配列の最後の要素番号を超えていなければ、手順2に戻る。

  5. 最大値として、変数maxの値を出力する。

以上が配列の最大値を求めるアルゴリズムです。仮初の最大値を決めて、それよりも大きい値が出れば、最大値を入れ替えます。すると、最後には自然と全体の最大値が代入されている、という仕掛けです。

ここでも、手順2〜4は繰り返しの構文であること、変数nが最後の要素番号を超えるまで繰り返すこと、この2点に注意します。

おわりに

今回は「アルゴリズム」の一例として、配列の値の合計と最大値を求める問題を扱いました。

以上のようなアルゴリズムを応用すれば、配列の数値の平均値を求めたり、最小値を求めたりするようなアルゴリズムも構築できます。また、配列の数値を並べかえるアルゴリズムにも応用可能です。

どちらもシンプルですが、非常に応用範囲の広いアルゴリズムです。

前回もお伝えした通り、まずは着実にひとつずつ理解しながら、プログラミングの作業をすること。数をこなしていけば、自然と身につきますので、ぜひチャレンンジしてみてください。

-------------------------

最後まで読んでいただき、ありがとうございます。実際は非定期ですが、毎日更新する気持ちで取り組んでいます。あなたの人生の新たな1ページに寄り添えたら幸いです。何卒よろしくお願いいたします。

-------------------------

⭐︎⭐︎⭐︎ プロフィール ⭐︎⭐︎⭐︎

⭐︎⭐︎⭐︎ ロードマップ ⭐︎⭐︎⭐︎


いいなと思ったら応援しよう!