乱数生成とキーボート入力

https://gyazo.com/1563cf6f8a35150975b9a1e09f19ade7

プロジェクトの準備

Eclipseで新規にプロジェクトを作成しましょう. メニューから[ファイル]-[新規]-[Javaプロジェクト]をクリックして,「新規Javaプロジェクトの作成」を開きます. ここでは,プロジェクト名に”Project5”を入力して,[完了]をクリックしましょう. パッケージ・エクスプローラに作成したプロジェクトが表示されていることを確認してください.

https://gyazo.com/0c72995508d93100e419ab4beec92c5d

続いてソースファイルを作成しましょう. メニューから[ファイル]-[新規]-[クラス]をクリックして,「新規Javaクラス」を開きます. ここでは,名前に”MyClass”を入力し,public static void main(String[] args)(V)にチェックを入れ,[完了]をクリックしましょう. パッケージ・エクスプローラに作成したソースファイルが表示されていることを確認してください.

https://gyazo.com/cf7ce1eb13d63d2e7a054d0464450fd0

乱数生成

サイコロの出た目のように規則性がなく予測不能な数値のことを乱数と呼びます. コンピュータではその性質から完全な乱数を生成することは出来ないため, 擬似乱数と呼ばれる乱数とほぼ同じ特徴を持った値を生成します. 0以上,かつ,n未満を条件とした整数の乱数を生成するには下記のように記述します. RandomはJavaのライブラリに含まれるクラスの1つですが詳細は省略します.

Random r = new Random();
int x = r.nextInt(n);

下記のコードを参考に,int型の変数xを宣言し,0~2までの乱数を代入してみましょう. プログラムの実行後に,コンソールの出力結果を確認してください. 実行毎に出力される値が変化することが分かります.

乱数を利用しておみくじを作成してみましょう. 下記のコードを参考に,変数xの値に応じて,ランダムに”大吉”,”吉”,”凶”をコンソールに出力させてみましょう. プログラムの実行後に,コンソールの出力結果を確認してください.

キーボード入力

ユーザから入力を受け取る方法の1つがキーボードです. キーボードから文字列を受け取るには下記のように記述します. ScannerはJavaのライブラリに含まれるクラスの1つですが詳細は省略します.

Scanner s = new Scanner(System.in);
String text = s.nextLine();
s.close();

下記のコードを参考に,変数nameにキーボードから入力した文字列を代入してみましょう. ここで,System.out.print()は,System.out.println()と同様に文字列をコンソールに出力する命令ですが,改行しないという点が異なります. また,コンソールへの出力の際には,文字列を連結するための演算子「+」を利用していることに注意が必要です.

キーボードから整数を受け取るには下記のように記述します.

Scanner s = new Scanner(System.in);
int number = s.nextInt();
s.close();

下記のコードを参考に,変数ageにキーボードから入力した整数を代入してみましょう. Scannerの宣言や,**s.close();**は一度しか記述しないことに注意してください.

課題

下記のコードを参考にハイ&ローを実装してみましょう. ハイ&ローはトランプゲームの1つで,ディーラーとプレイヤーに1枚ずつカードを配り, プレイヤーのカードの数字が大きいか(H)小さいか(L)を当てるゲームです. ここで「//」で始まる行はコメントです. コメントは,ソースコードを読みやすくするための解説文として用いられ,プログラムとして実行されることはありません. 課題が完成したら,作成したプロジェクトを実行可能JARファイルの形式でファイルに保存(エクスポート)してください.

参考書籍