変数が100個あったとしたら名前を考えるだけでもひと仕事です。

しかし、同じ型の変数であれば、配列として扱うことができます。

さらに前回学んだ繰り返しと配列はとても相性が良いのです。

ここでは、そんな配列を使った問題を出したいと思います。

以下のプログラムを作成しなさい。

(チームでホワイトボードを使い、方針を決めてからプログラミングを始めること)

1.配列の宣言と初期化①

研修受講者のテストの点数を管理するための以下の配列を作成し、すべての要素を通常のfor文を使い表示しなさい。

点数:28,53,54,81,18

配列名:scores

データ型:int

ただし、new演算子を使用すること。

(出力例)

28 53 54 81 18

2.配列の宣言と初期化②

研修受講者のテストの点数を管理するための以下の配列を作成し、すべての要素を表示しなさい。

ただし、new演算子を使用しないで初期化すること。

また、表示する際には①通常のfor文、②拡張for文、③Arrays.toString()の3通りの方法を試すこと。

点数:94,85,67,24,56,51,49,7,23,71

※点数はここからコピーして良い

配列名:scores

データ型:int

(出力例)

94 85 67 24 56 51 49 7 23 71

3.配列要素の平均値

問題2の配列scoresから平均点(浮動小数点数:以下同じ)を表示するプログラムを作成しなさい。

変数名はチームごとにふさわしい名前をつけること。

なお、時間の余裕があれば通常のfor文と拡張for文の両方で試すこと。

(出力例)

平均点は、52.7点です。

4.配列を使ったデータ処理

問題3を応用して、平均点以上の点数を表示するプログラムを作成しなさい。

変数名はチームごとにふさわしい名前をつけること。

なお、時間の余裕があれば通常のfor文と拡張for文の両方で試すこと

(出力例)

平均点は、52.7点です。
平均点以上の点数:94 85 67 56 71

5.配列の最大値と最小値

問題2の配列scoresから最高点と最低点を表示するプログラムを作成しなさい。

ただし、テストの点数は0~100とする。

最高点を格納する変数:max

最低点を格納する変数:min

なお、時間の余裕があれば通常のfor文と拡張for文の両方で試すこと

(出力例)

最高点は94点です。
最低点は7点です。

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.オリジナル問題作成

将来の後輩のために良い問題が出来たら教えてください。

以上。

JavaSEの問題集トップページに戻る