解答は
ホスト名: earth.mlab.im.dendai.ac.jp
ディレクトリ: /home/submit/JavaBeginners/[今日の日付]/[学籍番号]
に提出しなさい。ソースファイル (〜.java) のみを提出。 提出は gFTP 等の ftp ソフトを用いて行うこと。
提出先が木曜日と異なることに注意
各軸(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) { Vector2D ux, uy; ux = createUnitXVector(); uy = createUnitYVector(); System.out.println("UnitX=(" + ux.getX() + ", " + ux.getY() + ")"); System.out.println("UnitY=(" + uy.getX() + ", " + uy.getY() + ")"); } //ここに単位Xベクトルを戻り値とする //createUnitXVectorメソッドを作成 //(staticを忘れずに) //ここに単位Yベクトルを戻り値とする //createUnitYVectorメソッドを作成 //(staticを忘れずに) }
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を忘れずに) }