計算機ネットワーク Ⅱ(Java編)・第 1 回レポート


問題

次の問(1.〜5.)を解いてレポートを作成せよ。

  1. 第1章 p.4 問 1.1.7 (参考 MouseTest.java

    マウスを押した場所を順に結んで、折れ線を描画するプログラムを書け。 アプレットを最小化したり、他のウインドウで隠したりしても、再描画のと きに折れ線もちゃんと再描画されるようにせよ。また、 総称クラスの java.util.ArrayListクラス (計算機ネットワークⅠ の3.5章) を使用して、頂点がいくつに増えても 対応できるようにすること。
  2. 第1章 p.7 問 1.2.4 (参考 Fact.java, UpDownButton.java

    摂氏の温度をテキストフィールドに入力して、これを華氏の温度に変換するア プレットを Fact.javaにならって書け。

    さらに、2つのテキストフィールドを用いて、摂氏と華氏の変換を双方向に行 なえる (片方のテキストフィールドの値を変えると、もう片方のテキスト フィールドの値が変わる)ようにせよ。

    (参考) (華氏の温度) = (摂氏の温度)× 9/5+32

    例えば摂氏 0度は華氏で 32度、摂氏 100度は 212度になる。

    (参考) String型を double型 (実数の型)に変換するには、 Double.parseDoubleというクラスメソッドを使う。

    (円とドルの変換、センチメートルとインチの変換、ラジアンと度数法の変換 など他の単位の変換をするアプレットなどでも良い。)

  3. 第2章 p.6 問 2.5.2
    (参考: Point.java, ColorPoint.java

    DeepPointクラスは、このプリントで定義されたPointク ラスを継承し、新しいフィールドint depthを持っている。 printも再定義されていて、 depthが 5の DeepPointは“(((((11, 19)))))”のように括弧が 5重 になって出力される。
    1. DeepPointクラスを定義せよ。
    2. depthが 1 〜 10の値に制限されるように setDepth(及び getDepth)を定義せよ。
    注: setDepth, getDepth以外の方法で depthの値を参照できないようにすること。
    テスト用のmainメソッド(DeepPointTest.java

    public class DeepPointTest {
        public static void main(String args[]) {
            Point p = new Point(10, 20);
            p.move(1, -1);
            p.print();
            System.out.println();
            
            DeepPoint dp = new DeepPoint(20, 30, 5);
            dp.move(1, -1);
            dp.print();
            System.out.println();
    
    	dp.depth = 20;    // コンパイル時にエラーになることを確認してコメントアウトしておくこと
    	dp.setDepth(8);
    
            Point[] pts = new Point[2];
            pts[0] = p; pts[1] = dp;
            
            int i;
            for (i=0; i<2; i++) {
                pts[i].moveAndPrint(10, 10);
                System.out.println();
            }
        }
    }
    
    その(“dp.depth=20”の行をコメントアウトした時の)出力例:
    (11, 19)
    (((((21, 29)))))
    (11, 19)(21, 29)
    ((((((((21, 29))))))))((((((((31, 39))))))))
    
  4. 第3章 p.4 問 3.1.2

    円が左右に移動し、左か右の壁にぶつかった時は跳ね返るようなアプレットを 書け。さらに斜めに動いて上下左右の壁にぶつかった時、跳ね返るようなアプ レットを書け。
  5. 第A章 p.4 問 A.2.4 (参考 Pphttpd.java

    時計付 Webページを配信する(偽)HTTPサーバプログラムを書け。

注意


Koji Kagawa