You are on page 1of 3

class shape { public virtual double circumference() { return 0; } public virtual double area() { return 0; } }

class rectangle : shape { point p1, p2; public rectangle(point a, point b) { p1 = a; p2 = b; } public override double circumference() { return 2 * (Math.Abs(p1.get_x() - p2.get_x()) + Math.Abs(p1.get_y() - p2.get_y())); } public override double area() { return Math.Abs(p1.get_x() - p2.get_x()) * Math.Abs(p1.get_y() p2.get_y()); } }

class circle:shape { point p; double r; public circle() { p = new point(); r = 0; } public circle(point p1, double rr) { p = p1; r = rr; } public bool inside(point p1) { if (p.khcach(p1) < r) return true; return false;

} public override double circumference() { return 2 * 3.1416 * r; } public override double area() { return 3.1416 * r * r; } }

class angle:shape { point p1, p2, p3; public angle(point a, point b, point c) { p1 = a; p2 = b; p3 = c; } public override double circumference() { return p1.khcach(p2)+p2.khcach(p3)+p3.khcach(p1); } public override double area() { double a,b,c,k; a = p1.khcach(p2); b = p2.khcach(p3); c = p3.khcach(p1); k = (a + b + c) / 2; return Math.Sqrt(k*(k-a)*(k-b)*(k-c)); } }

class point { int x, y; public point() { x = 0; y = 0; } public point(int xx, int yy) { x = xx; y = yy; } public int get_x() {

return x; } public int get_y() { return y; } void set_x(int xx) { x = xx; } void set_y(int yy) { y = yy; } public double khcach(point p) { return Math.Sqrt((p.x - x) * (p.x - x) + (p.y - y) * (p.y - y)); } }

class Program { static void Main(string[] args) { point p1 = new point(3,3); point p2 = new point(5, 6); point p3 = new point(1, 3); shape a, b,c; a = new circle(p1, 4); b = new rectangle(p1, p2); c = new angle(p1, p2, p3); Console.WriteLine("dien tich cua a la:{0}", a.area()); Console.WriteLine("dien tich cua b la:{0}", b.area()); Console.WriteLine("dien tich cua c la:{0}", c.area()); Console.WriteLine("chu vi cua a la:{0}", a.circumference()); Console.WriteLine("chu vi cua b la:{0}", b.circumference()); Console.WriteLine("chu vi cua c la:{0}", c.circumference()); Console.ReadKey(); } }

You might also like