・   「Java Ib 実習」 第6回

6:基本のアルゴリズム(3)

別のクラスのメソッドを呼び出して利用する方法について練習します。 実行時のコマンドライン引数の意味と利用方法についても解説します。


・ 準備:

  1. LinuxもしくはWindowdsの環境でログインしなさい。
  2. 作業のための端末エミュレータのウィンドウを開きなさい。
  3. ホームディレクトリの下の作業用のディレクトリ java2 の中に移動しなさい。
  4. 前回の基本課題が終わっていない人は、そちらから先に行ってください。

・ 基本課題1:「コマンドライン引数の利用(1)」

  1. ソースファイル ArgsTest1.java を作成しなさい。
  2. javac コマンドでコンパイルをしなさい。
  3. コマンドライン引数として適当に文字列を渡して実行し結果を確認しなさい。
  4. コマンドライン引数を渡さないとエラーになることも確認しなさい。

java  ArgsTest1  abcdefg
java  ArgsTest1  1234567
java  ArgsTest1  "abc  def  ghi"
java  ArgsTest1  abc  def  ghi
java  ArgsTest1

・ 基本課題2:「コマンドライン引数の利用(2)」

  1. ソースファイル ArgsTest2.java を作成しなさい。
  2. javac コマンドでコンパイルをしなさい。
  3. コマンドライン引数として適当な個数の文字列を渡し、 それらが1行ずつに表示されることを確認しなさい。

java  ArgsTest2  abc
java  ArgsTest2  abc  def
java  ArgsTest2  abc  def  ghi

・ 基本課題3:「コマンドライン引数の利用(3)」

  1. ソースファイル ArgsTest3.java を作成しなさい。
  2. javac コマンドでコンパイルをしなさい。
  3. コマンドライン引数に数字を与え、 指定された回数だけ行が表示されることを確認しなさい。

java  ArgsTest3  10
java  ArgsTest3  20

・ 基本課題4:「コマンドライン引数の利用(4)」

  1. ソースファイル ArgsTest4.java を以下の条件を満たすように作成しなさい。
  2. コマンドライン引数の第1引数を繰り返しの回数、 第2引数を繰り返すメッセージと解釈し、 指定された回数だけ与えられたメッセージを繰り返して表示させなさい。

java  ArgsTest4  5  Hello

[0]:Hello
[1]:Hello
[2]:Hello
[3]:Hello
[4]:Hello

・ 基本課題5:「成績データの生成」
Mathクラスの random()メソッドを呼び出すことで、試験の成績を擬似的に生成してみます。

  1. ソースファイル MakeData.java を作成しなさい。
  2. javac コマンドでコンパイルをしなさい。
  3. 次のようにコマンドラインの引数にデータの個数のデータを指定し、 実行してみなさい。

java  MakeData  20
java  MakeData  50
java  MakeData  100

・ 基本課題6:「生成した成績データの利用」

  1. 上記のデータ数50個の出力結果をコピー&ペーストするなどし、 前回作成した SeisekiShori.java のデータ部分を新たに生成したデータに置き換え、 コンパイルと実行をしてみなさい。

・ 基本課題7:「生成した成績データの利用(2)」
MakeDataの makeData()メソッドを呼び出して多数の個数のデータをソートする 実験です。

  1. 1000個のデータを並び替える実験をします。 ソースファイル SortTest.java を作成しなさい。
  2. javac コマンドでコンパイルをしなさい。
  3. 実行し、結果を確認しなさい。
  4. データの個数を10000個、100000個に増やすと、処理の時間はどうなりますか?

・ メールによるレポート課題: 以下の結果を tatsuo宛のメール で知らせてください。 件名(Subject)は java17

  1. 学籍番号と氏名
  2. 課題1でコマンドライン引数を与えないで実行すると、 どんなエラーメッセージが表示されましたか?
  3. 課題3、4のソースファイルを添付しなさい。
  4. 課題6の元データと実行結果。
  5. 課題7でデータの個数が100000個の時、処理にどの程度の時間がかかりましたか?

実習の目次   今週の講義の内容