teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

3

細かい修正

2017/11/19 03:33

投稿

namnium1125
namnium1125

スコア2045

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,px2使ってないみたいですね。。
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

一部説明の追加

2017/11/19 03:33

投稿

namnium1125
namnium1125

スコア2045

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

説明の追加

2017/11/18 18:15

投稿

namnium1125
namnium1125

スコア2045

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