**講義スライド [#sf0843ee]
#ref(./第9_5回.pdf);

**基礎クラス用演習問題 [#rd8fe980]
解答は

&size(20){ホスト名: earth.mlab.im.dendai.ac.jp};

&size(20){ディレクトリ: /home/submit/JavaBeginners/[今日の日付]/[学籍番号]};

に提出しなさい。ソースファイル (〜.java) のみを提出。
提出は gFTP 等の ftp ソフトを用いて行うこと。

&size(20){''提出先が木曜日と異なることに注意''};

***問題1(Beginners') [#y1786c1b]
各軸(x,y)の単位(=長さが1)2次元ベクトルを戻り値とする,createUnitXVector,createUnitYVectorを,mainメソッドを含むクラス(CreateUnitVector)に作成し,使用せよ.
各軸(x,y)の単位(=長さが1)2次元ベクトルを戻り値とする,createUnitXVector,createUnitYVectorメソッドを,mainメソッドを含むクラス(CreateUnitVector)に作成し,使用せよ(プログラム名:CreateUnitVector).

 実行結果:
 UnitX=(1.0, 0.0)
 UnitY=(0.0, 1.0)

 //Vector2Dクラスを作成

 
 public class CreateUnitVector
 {
     static public void main(String[] args)
     {
         Vector ux, uy;
         Vector2D ux, uy;
         ux = createUnitXVector();
         uy = createUnitYVector();

 
         System.out.println("UnitX=(" + ux.getX() + ", " + ux.getY() + ")");
         System.out.println("UnitX=(" + uy.getX() + ", " + uy.getY() + ")");
         System.out.println("UnitY=(" + uy.getX() + ", " + uy.getY() + ")");
     }

 
     //ここに単位Xベクトルを戻り値とする
     //createUnitXVectorメソッドを作成

     //(staticを忘れずに)   
 
     //ここに単位Yベクトルを戻り値とする
     //createUnitYVectorメソッドを作成
     //(staticを忘れずに)
 }

***問題2 [#a14bec33]
2つの2次元ベクトルを引数として,それらのベクトルの内積の計算結果を戻り値とするdotVectorメソッドをmainメソッドを含むクラス(DotVector)に作成し,使用せよ(プログラム名:DotVector).

 //Vector2Dクラス
 
 public class DotVector
 {
     static public void main(String[] args)
     {
         Vector2D ux, uy;
         ux = createUnitXVector();
         uy = createUnitYVector();
 
         System.out.println("X軸単位ベクトル=(" + ux.getX() + ", " + ux.getY() + ")");
         System.out.println("Y軸単位ベクトル=(" + uy.getX() + ", " + uy.getY() + ")");
         
         double dot;
         dot = dotVector(ux, uy);
         
         double ang;           //2つのベクトルa,bが単位ベクトルであれば,内積の値は
                               //cosΘ=ax・bx + ay・by
         ang = Math.acos(dot); //よって内積の計算結果から逆余弦関数で
                               //2つのベクトル間の角度を得ることができる
         ang = (ang / Math.PI) * 180.0; //単位をラジアンから度へ変換
         
         System.out.println("2つのベクトル間の角度は" + ang + "度です");
     }
 
     //createUnitXVectorメソッド 
 
     //createUnitYVectorメソッド
 
     //ここに2つのVector2Dを引き数として,
     //内積の計算結果を戻り値とするdotVectorメソッドを作成
     //(staticを忘れずに)
 }


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS