设计一个基类,从基类派生圆,从圆派生圆柱,设计成员函数输出它们的面积和体积

来源:互联网 发布:淘宝返利网不计入销量 编辑:程序博客网 时间:2024/05/28 15:21

#include <iostream>
#include <cmath>
using namespace std;

#define pi 3.14

class point{
protected:
 int x1, y1;
public:
 point(int a, int b) { x1=a; y1=b; }
};

class circle:public point{
protected:
 int x2, y2;
public:
 circle(int a, int b, int c, int d):point(a,b) { x2=c; y2=d; }
 double area()
 { 
  double r= sqrt(abs(x2-x1)*abs(x2-x1)+abs(y2-y1)*abs(y2-y1));
  double area=pi*r*r;
  cout << "area is:" << area << endl;
  return area;
 }
};

class column:public circle{
protected: 
 int h;
public:
 column(int a, int b, int c, int d, int e):circle(a,b,c,d) { h=e; }
 void cubage()
 {
  double cubage=circle::area()*h;
  cout << "cubage is:" << cubage << endl;
 }
};

void main(){
 circle c(1,1,4,2);
 c.area();
 column cl(1,1,4,2,10);
 cl.cubage();
}