・   「プログラミング実習」 導入第5回

アルゴリズムとメソッドの役割

複数のメソッドと「繰り返し」や「条件分岐」の構造について練習します。


・ 準備:

  1. LinuxもしくはWindowdsの環境でログインしなさい。
  2. 作業のための端末エミュレータのウィンドウを開きなさい。
  3. ホームディレクトリの下の Javaの作業用のディレクトリ java の中に移動しなさい。

・ 基本課題1:「メソッドの定義と呼び出し」
複数のメソッドを定義して、それを呼び出すプログラムです。 if文を用いた「条件分岐」も使用します。

  1. ソースファイル GoodMorning.java を作成しなさい。
  2. javac コマンドでコンパイルをしなさい。
  3. java コマンドを通じてプログラムを実行しなさい。

vi  GoodMorning.java
javac  GoodMorning.java
java  GoodMorning

・ 基本課題2:「メソッドの定義と呼び出し(2)」
今度は少し複雑な計算の処理を行なうメソッドを定義してみましょう。

  1. ソースファイル Calculation.java (教科書 P.29-30)を作成しなさい。
  2. javac コマンドでコンパイルをしなさい。
  3. java コマンドを通じてプログラムを実行しなさい。

vi  Calculation.java
javac  Calculation.java
java  Calculation


・ メールによるレポート課題: 以下の結果を tatsuo宛のメール で知らせてください。 件名(Subject)は program3 (全員必ず提出すること。)

  1. 課題1:のプログラムを実行した時刻と、実行した出力結果。
  2. 課題2:のプログラムを実行して得られた、 2の30乗の値と、100000の後の最初の素数の値。

・ 応用課題1:「プログラムの処理の内容の変更」

  1. 課題4のプログラムを 3の10乗の値と 300000 の後の最初の素数を 計算するように書き直しなさい。
  2. コンパイルし直し、実行してみなさい。

・ 応用課題2:「占いのプログラム」
乱数を発生させ、 if文を用いた「条件分岐」によって運勢のメッセージを表示させます。

  1. ソースファイル Fortune.java を作成しなさい。
  2. javac コマンドでコンパイルをしなさい。
  3. java コマンドを通じてプログラムを実行しなさい。
  4. 実行を何回か繰り返してメッセージがランダムに表示されることを確認しなさい。

・ 応用課題3:「switch-caseによる条件分岐」

  1. GoodMorningのプログラムを switch-case で書き直したソースファイル GoodMorning2.java を作成しなさい。
  2. javac コマンドでコンパイルをしなさい。
  3. java コマンドを通じてプログラムを実行しなさい。

・ 応用課題4:「2重ループの練習」
2重ループを用いて九九の掛け算の表示を行います。

  1. ソースファイル KuKu.java を作成しなさい。
  2. javac コマンドでコンパイルをしなさい。
  3. java コマンドを通じてプログラムを実行しなさい。

・ 応用課題5:「繰り返しと条件分岐の組み合わせ」

  1. ソースファイル Loan.java を作成しなさい。
  2. javac コマンドでコンパイルをしなさい。
  3. java コマンドを通じてプログラムを実行しなさい。

・ 応用課題6:「プログラムの処理の内容の変更」

  1. 余力のある人は、 課題5のプログラムを修正して、 利息がない場合はどれだけの期間で返済できるか計算させ、 先程の結果と比較しなさい。

・ 応用課題7:「プログラムの処理の内容の変更」

  1. さらに余力のある人は、 課題4のプログラムを修正して、 次のように数字がきれいにそろうように工夫してみなさい。 ヒント:(java.io.PrintStreamのAPIドキュメント)

 1  2  3  4  5  6  7  8  9 
 2  4  6  8 10 12 14 16 18 
 3  6  9 12 15 18 21 24 27 
 4  8 12 16 20 24 28 32 36 
 5 10 15 20 25 30 35 40 45 
 6 12 18 24 30 36 42 48 54 
 7 14 21 28 35 42 49 56 63 
 8 16 24 32 40 48 56 64 72 
 9 18 27 36 45 54 63 72 81



・ ボーナス課題: 応用課題7 ができた人は、そのソースファイルの内容を、 tatsuo宛のメール で知らせてください。 件名(Subject)は ouyou3 (正解者は実習の評価に得点がプラスされます。)


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