cpoint

 1 #include<iostream>
 2 #include<math.h>
 3 using namespace std;
 4 class CPoint
 5 {
 6 public:
 7     int cpoint()
 8     {
 9         x = 0;
10         y = 0;
11         return 0;
12     }
13     int cpoint(double a , double b)
14     {
15         x=a;
16         y=b;
17         return 0;
18     }
19     double GetX()
20     {
21         return x;
22     }
23     double GetY()
24     {
25         return y;
26     }
27     int SetX(double a)
28     {
29         x=a;
30         return 0;
31     }
32     int SetY(double a)
33     {
34         y=a;
35         return 0;
36     }
37 private:
38     double x,y;
39 };
40 class CRectangle:public CPoint
41 {
42 private:
43     CPoint cp1,cp2;
44 public:
45     int crectangle()
46     {
47         cp1.cpoint();
48         cp2.cpoint();
49         return 0;
50     }
51     int crectangle( const CPoint& c1,const CPoint& c2)
52     {
53         cp1 = c1;
54         cp2 = c2;
55         return 0;
56     }
57     int SetLPoint( const CPoint& c1)
58     {
59         cp1 = c1;
60         return 0;
61     }
62     int SetRPoint( const CPoint& c2)
63     {
64         cp2 = c2;
65         return 0;
66     }
67     double GetPerimeter()
68     {
69         double X1,X2,Y1,Y2;
70         X1 = cp1.GetX();
71         X2 = cp2.GetX();
72         Y1 = cp1.GetY();
73         Y2 = cp2.GetY();
74         return (fabs(X1 - X2) + fabs(Y1 - Y2)) * 2;
75     }
76     double GetArea()
77     {
78         return fabs(cp1.GetX() - cp2.GetX()) * fabs(cp1.GetY() - cp2.GetY());
79     }
80 };
81 int main()
82 {
83     CRectangle * a_rectagnle = new CRectangle ;
84     CPoint c1 , c2 ;
85     c1.cpoint( 2 , 5 );
86     c2.cpoint( 6 , 8 );
87     a_rectagnle->crectangle( c1,c2 );
88     cout << "perimeter = " << a_rectagnle->GetPerimeter() << endl;
89     cout << "area = " << a_rectagnle->GetArea() << endl;
90     c1.cpoint(4,6);
91     a_rectagnle->SetLPoint( c1 );
92     c2.cpoint( 7, 9 );
93     a_rectagnle->SetRPoint( c2 );
94     cout << "perimeter = " << a_rectagnle->GetPerimeter() << endl;
95     cout << "area = " << a_rectagnle->GetArea() << endl;
96     delete a_rectagnle;
97     return 0;
98 }

 

posted on 2013-12-26 16:52  了发发  阅读(285)  评论(0)    收藏  举报

导航