자바 프로그래밍 : 한 원이 다른원에 포함되는가?

조회수 1434회
  • Point2D.java
  • public class Point2D { private double x; private double y;

    public double getX() { return x; } public double getY() { return y; }

    public void move(double dx, double dy) { x += dx; y += dy; }

    public double distance(double x, double y) { double dx = this.x - x; double dy = this.y - y; return Math.sqrt(dx*dx + dy*dy); }

    public double distance(Point2D p) { return distance(p.x, p.y); }

    public Point2D() { this.x = 0; this.y = 0; }

    public Point2D(double x, double y) { this.x = x; this.y = y; }

}


Circle2D.java

public class Point2D { private double x; private double y;

public double getX()
{
    return x;
}
public double getY()
{
    return y;
}

public void move(double dx, double dy)
{
    x += dx;
    y += dy;
}

public double distance(double x, double y)
{
    double dx = this.x - x;
    double dy = this.y - y;
    return Math.sqrt(dx*dx + dy*dy);
}

public double distance(Point2D p)
{
    return distance(p.x, p.y);
}

public Point2D()
{
    this.x = 0;
    this.y = 0;
}

public Point2D(double x, double y)
{
    this.x = x;
    this.y = y;
}

}


Test.java

public class Test { public static void main(String [] args) { Point2D p = new Point2D(10,10); Circle2D c1 = new Circle2D(p,1), c2 = new Circle2D(p,2); System.out.println(c2.contains(c1)); c2.move(10,10); System.out.println(c2.contains(c1)); } }

여기서 Test.java 를 실행시키면 분명 true false 라는 결과가 나와야 하는데 true true 결과가 계속 나옵니다 ㅠㅠ

어디서 잘못된 걸까요...?

  • Point2D.java를 두번 적어주시고 Circle2D.java의 내용은 안올려주신 것 같습니다 Hommy 2018.1.6 18:41

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)