53.利用 LOCATION 类,使用继承定义圆类 CIRCLE ,圆由圆心和半径构成。提供得到圆心
坐标和半径的成员函数、 以及计算圆的周长和面积的成员函数。 在主程序中创建两个圆 A
和 B,圆心坐标分别为 (0,3)、(3,7),按如下格式输出两个圆的圆心坐标、周长和面积,
并计算和输出两个圆的圆心之间的距离。
A:(xl ,y1,r1) ,Girth=g1 ,Area=a1
B:(x2 ,y2,r2) ,Girth=g2 ,Area=a2
A(xl ,y1) , B(x2 ,y2) ,Distance=d
定义 LOCATION 类,该类没有“继承”等现象。注意二维坐标点之间的距离公式。
class LOCATION{
double x,y;
public : virtual double getx()const{return x ;};
virtual double gety()const{return y ; };
virtual double dist(LOCATION &s)const ;
LOCATION(double x ,double y) :x(x) ,y(y){} ;} ;
double LOCATION :: dist(LOCA TION &s)const{
double xd=s.x — x,yd=s.y — y;
return sqrt(xd*xd+yd*yd) ;}
定义 circle 类,实现各个函数块内容
class CIRCLE:public LOCATION
{
double r;
public:
CIRCLE(double cx,double cy,double round):LOCATION(cx,cy),r(round){}
LOCATION getCentre()const{return LOCATION(getx(),gety());}
double getRound()const{return r;}
double getGirth()const;
double getArea()const;
double dist(CIRCLE & s)const;
void print()const;
};
评论0
最新资源