計算機ネットワーク I・第 2 回レポート


問題

次の問(3問)を解いてレポートを作成せよ。

  1. p.38 問 5.5.3
    注意:フィールドa, bの値はコンストラクタのなかで、 Math.random()で適当な範囲(例えば[-5,5])の乱数を生成し、 他の方法でa, bの値を参照できないようにすること。

  2. p.46 問 6.1.2
    ヒント: x方向の速度を vx、y方向の速度をvyとし、 壁にぶつかったらvx, vyの正負を反転する。

    問6.1.2だけでは物足りない人はp.51 問 6.3.4にも挑戦するべし。

  3. 参考: クイックソート

    static void swap(int[] v, int i, int j) {
      int tmp = v[i];
      v[i] = v[j];
      v[j] = tmp;
    }
    
    static void qsort(int[] v, int left, int right) {
      int i, last;
    
      if (left>=right) return;
      swap(v, left, (left+right)/2);
      last = left;
      for (i=left+1; i <= right; i++) {
        if (v[i] < v[left]) {
           swap(v, last+1, i);
           last++; 
        }
      }
      swap(v, left, last);
      qsort(v, left, last-1);
      qsort(v, last+1, right);
    }
    

  4. p.59 問 7.3.3 (参考 Pphttpd.java

    ヒント:

注意


Koji Kagawa (kagawa@eng.?????)