回答編集履歴
3
細かい修正
answer
CHANGED
@@ -32,7 +32,8 @@
|
|
32
32
|
return d;
|
33
33
|
// 一気にreturn Math.sqrt(Math.pow(this.x,2)+Math.pow(this.y,2));でもいい。
|
34
34
|
}
|
35
|
+
// double getDist(Point2D a,Point2D b){ //自分の点と引数の点間の距離を算出
|
35
|
-
public double getDist(Point2D p){ //
|
36
|
+
public double getDist(Point2D p){ // 引数は相手の点だけでいいです。
|
36
37
|
// double d = Math.sqrt(x*x+y*y);
|
37
38
|
double d = Math.sqrt(Math.pow(this.x-p.x,2)+Math.pow(this.y-p.y,2));
|
38
39
|
// return d2; <- わざわざd2にする必要ありません。
|
@@ -98,7 +99,7 @@
|
|
98
99
|
|
99
100
|
// double px1 = p1.getXY(); getX,getYが定義されていませんでしたので、上記に追加しました。
|
100
101
|
// double py1 = p1.getXY();
|
101
|
-
double px1 = p1.getX();double py1 = p1.getY(); // ただ今回px1,
|
102
|
+
double px1 = p1.getX();double py1 = p1.getY(); // ただ今回px1,py1,使ってないみたいですね。。
|
102
103
|
|
103
104
|
Point2D p2 = new Point2D(num[2],num[3]);
|
104
105
|
// p2.setXY(Double.parseDouble(args[2]));
|
@@ -107,7 +108,7 @@
|
|
107
108
|
|
108
109
|
// double px2 = p2.getXY();
|
109
110
|
// double py2 = p2.getXY();
|
110
|
-
double px2 = p2.getX();double py2 = p2.getY();
|
111
|
+
double px2 = p2.getX();double py2 = p2.getY(); // 同上。px2,py2は使ってないのでこの行は不要
|
111
112
|
|
112
113
|
// System.out.println("点aは"+p1.show(p1.x,p1.y)); <- 引数いらなくない。。?
|
113
114
|
System.out.println("点aは"+p1.show());
|
2
一部説明の追加
answer
CHANGED
@@ -30,6 +30,7 @@
|
|
30
30
|
// double d1 = Math.sqrt(x*x+y*y); <- わざわざd1にする必要ありません。
|
31
31
|
double d = Math.sqrt(Math.pow(this.x,2)+Math.pow(this.y,2));
|
32
32
|
return d;
|
33
|
+
// 一気にreturn Math.sqrt(Math.pow(this.x,2)+Math.pow(this.y,2));でもいい。
|
33
34
|
}
|
34
35
|
public double getDist(Point2D p){ //自分の点と引数の点間の距離を算出
|
35
36
|
// double d = Math.sqrt(x*x+y*y);
|
@@ -61,14 +62,17 @@
|
|
61
62
|
}
|
62
63
|
|
63
64
|
public double getArea(){ //3角形の面積を求める
|
65
|
+
/* これはベクトル計算から証明される面積ですよね。。?
|
66
|
+
double tmp = (px1 * py2 - py1 * py2); -> Math.abs(px1 * py2 - px2 * py1)って書きたかった?
|
67
|
+
double z = tmp / 2;
|
68
|
+
return z;
|
69
|
+
確かに面積は(絶対値をつければ)出ますがヘロンの公式ではありません。
|
70
|
+
*/
|
64
71
|
/* ヘロンの公式にちなみコードを変更。
|
65
72
|
S = sqrt(s*(s-l)*(s-m)*(s-n))
|
66
73
|
ただしs = (l+m+n)/2
|
67
74
|
wikiぐらい読んでください。
|
68
75
|
*/
|
69
|
-
// double tmp = (px1 * py2 - py1 * py2);
|
70
|
-
// double z = tmp / 2;
|
71
|
-
// return z;
|
72
76
|
double l = a.getDist(); // 辺OA
|
73
77
|
double m = b.getDist(); // 辺OB
|
74
78
|
double n = a.getDist(b); // 辺AB
|
1
説明の追加
answer
CHANGED
@@ -94,7 +94,7 @@
|
|
94
94
|
|
95
95
|
// double px1 = p1.getXY(); getX,getYが定義されていませんでしたので、上記に追加しました。
|
96
96
|
// double py1 = p1.getXY();
|
97
|
-
double px1 = p1.getX();double py1 = p1.getY();
|
97
|
+
double px1 = p1.getX();double py1 = p1.getY(); // ただ今回px1,px2使ってないみたいですね。。
|
98
98
|
|
99
99
|
Point2D p2 = new Point2D(num[2],num[3]);
|
100
100
|
// p2.setXY(Double.parseDouble(args[2]));
|
@@ -139,9 +139,12 @@
|
|
139
139
|
というかクラス名から察するにこれ宿題ですよね?
|
140
140
|
|
141
141
|
私は気にしませんがteratail的にこういうのはまずかったはずなので、(質問者様にその気はなくとも)あんまり丸投げのような質問はするべきではないです。気をつけてください。
|
142
|
+
また仮に宿題等だとしても、修正欄にもあるようにエラー内容だけでなくエラーメッセージも載せると丁寧でピンポイントな回答が得られると思います。
|
142
143
|
|
143
|
-
|
144
|
+
***
|
144
145
|
|
146
|
+
こんなことが起きてしまったのはおそらく「一気に作った」からだと思います。
|
147
|
+
|
145
148
|
よく意味も理解していないうちに次の部分をどんどん作るのではなく、少しづつ作って行くべきです。
|
146
149
|
そうすればコンパイルエラーの意味もわかるようになるはずです。
|
147
150
|
|