# 리뷰: 두 점 사이의 거리 #### CODE <a class='btn btn-default' href='/codes/19255'>Link</a> ``` public class PointTest { public static void main(String[] args) { // 객체 생성 Point p1 = new Point(0, 0); Point p2 = new Point(3, 4); // 거리 계산 double dist = Point.distance(p1, p2); // 결과 출력 System.out.printf("두 점 A%s, B%s 사이의 거리: %.2f", p1.toStr(), p2.toStr(), dist); } } class Point { /* 1. 필드를 만드시오. */ int x; int y; /* 2. 생성자를 정의하시오. */ Point(int centerX, int centerY){ x = centerX; y = centerY; } /* 3. 객체 정보를 문자열로 반환하는 인스턴스 메소드를 만드시오. */ String toStr(){ return String.format("(%d, %d)", x, y); } /* 4. 두 점 사이의 거리를 반환하는 클래스 메소드를 만드시오. */ static double distance(Point p, Point q){ double dX = p.x - q.x; // 두 점 사이의 거리가 - 가 되는거 아닌가여 ? 혹시 -가 된다면 절대값을 줘야되지않나요 ?? double dY = p.y - q.y; return Math.sqrt(dX * dX + dY * dY); } } ``` #### INPUT ``` ``` #### OUPUT ``` 두 점 A(0, 0), B(3, 4) 사이의 거리: 5.00 ```
# 답변입니다. 다행히도 제곱 연산이 있기에, 음수도 정상 동작합니다. ``` return Math.sqrt(dX * dX + dY * dY); ``` ## PS. 질문 감사합니다! :D
답변 감사합니다 ~!