配列に入っている値の中で一番大きい値を探してみましょう。次の順で簡単に説明します。
クイックジャンプ: プログラム | プログラム説明 | 練習 | 動作確認 | 次は?
次のプログラムでは、配列を宣言し、配列の要素に値を代入し、その値の合計を求めています。
[注意]左端の番号は、プログラムの一部ではありません。各行を区別するために付けた番号です。
3行目で、3つの変数i、value、indexを宣言しています。iはfor文の制御変数として使われます。valueは最大値を記憶する変数、indexは最大値の要素の添え字番号を記憶する変数です。
4行目で、データの値を記憶する配列を宣言しています。ここでは、配列の要素数を5としています。5行目から9行目までで、配列のそれぞれの要素に値を代入しています。
最大値の探し方は次のようにします。まず、1番目の要素の値と添え字番号をvalueとindexに入れます。次に、2番目の要素の値とvalueを比較して、大きい方の値と添え字番号をvalueとindexに入れます。次に、3番目の要素とvalueの比較を行うというように、最後の要素まで同様の操作を行います。valueには、調べ終わった要素の中での最大値が入っていますので、最後に得られたvalueとindexに最大値とその添え字番号が入ります。
上記の方法をプログラムでどうなっているか見てみましょう。10行目と11行目で1番目の要素の値と添え字番号(0)をvalueとindexに代入し、初期化しています。12行目から18行目のforブロックで、i番目の要素の値data[i]とvalueの比較を行っています。最後の要素の添え字番号が4ですので、12行目のforでは、制御変数iを1から4まで変えています。13行目でdata[i]とvalueを比較します。valueの方が大きければ、valueとindexは変更する必要がありません。data[i]の方が大きければ、15行目と16行目のように、今調べている要素の値と添え字番号をvalueとindexに入れます。
ヒントは下の動作確認にあります。
Cシミュレータを使って、上のプログラムの動作を確認してみましょう。
Cシミュレータによる動作確認をするときは上の絵をクリック
[注意]このリンク先のページはInternet Explore
3.0以降で正しく表示されます。
これで入門は終わりました。本学習ページで触れていないことは多数ありますが、簡単なプログラムは書けるようになったことでしょう。本学習ページで触れていないことを見るにはここをクリックしてください。
最後に、それでは、どの程度理解できたか、簡単な問題を解いて調べてみましょう。[ポストテスト]へ
このページの最終更新日は 00/01/27 です。 |
このページに関するご意見・コメントは板谷雄二(itaya@alice.asahi-u.ac.jp)までお願いします。 |
(C) 板谷雄二 |