変数が100個あったとしたら名前を考えるだけでもひと仕事です。
しかし、同じ型の変数であれば、配列として扱うことができます。
さらに前回学んだ繰り返しと配列はとても相性が良いのです。
ここでは、そんな配列を使った問題を出したいと思います。
以下のプログラムを作成しなさい。
(チームでホワイトボードを使い、方針を決めてからプログラミングを始めること)
1.配列の宣言と初期化①
研修受講者のテストの点数を管理するための以下の配列を作成し、すべての要素を通常のfor文を使い表示しなさい。
点数:28,53,54,81,18
配列名:scores
データ型:int
ただし、new演算子を使用すること。
2.配列の宣言と初期化②
研修受講者のテストの点数を管理するための以下の配列を作成し、すべての要素を表示しなさい。
ただし、new演算子を使用しないで初期化すること。
また、表示する際には①通常のfor文、②拡張for文、③Arrays.toString()の3通りの方法を試すこと。
点数:94,85,67,24,56,51,49,7,23,71
※点数はここからコピーして良い
配列名:scores
データ型:int
3.配列要素の平均値
問題2の配列scoresから平均点(浮動小数点数:以下同じ)を表示するプログラムを作成しなさい。
変数名はチームごとにふさわしい名前をつけること。
なお、時間の余裕があれば通常のfor文と拡張for文の両方で試すこと。
4.配列を使ったデータ処理
問題3を応用して、平均点以上の点数を表示するプログラムを作成しなさい。
変数名はチームごとにふさわしい名前をつけること。
なお、時間の余裕があれば通常のfor文と拡張for文の両方で試すこと
5.配列の最大値と最小値
問題2の配列scoresから最高点と最低点を表示するプログラムを作成しなさい。
ただし、テストの点数は0~100とする。
最高点を格納する変数:max
最低点を格納する変数:min
なお、時間の余裕があれば通常のfor文と拡張for文の両方で試すこと
6.グラフの出力
問題2の配列scoresを10点刻みのグラフで表示するプログラムを作成しなさい。
例えば、点数が1桁なら*が0個、90点台なら*が9つで表示せよ。
7.コラッツの予想 ふたたび
繰り返しのところでやったコラッツの予想について、整数1~10,000の中で数値の計算回数が最も多いものを求めなさい。
ここでの数値計算とは、「3倍して1を足す」を1回、「2で割る」を1回、合計2回という具合に数える。
なお、途中でテストとして、以下のパターンを確かめること。
26の場合:10回
27の場合:111回
<出力イメージ>
整数1~10,000の中でコラッツの予想の計算回数を調べたところ 最も回数が多かったのは の時で、繰り返し回数は 回でした。 |
8.オリジナル問題作成
将来の後輩のために良い問題が出来たら教えてください。
以上。