#include<iostream>
(资料图片)
#include<cmath>
#define pi 3.14
using namespace std;
class Figure{
public:
Figure(double r)
{
radius=r;
}
virtual double area(){return 0;
};
virtual double volume(){return 0;
};
protected:
double radius;
};
class Sphere:public Figure
{
public:
Sphere(double r);
virtual double volume(){
double sv;
sv=(4/3)*pi*pow(radius,3);
return sv;
}
virtual double area(){
double ss;
ss=4*pi*pow(radius,2);
return ss;
}
};
Sphere::Sphere(double r):Figure(r){
radius=r;
}
class Column:public Figure
{
public:
double h=1.0;
Column(double r);
virtual double area(){
double sc;
sc=pi*pow(radius,2)+2*pi*radius*h;
return sc;
}
virtual double volume(){
double vc;
vc=h*pi*pow(radius,2);
return vc;
}
};
Column::Column(double r):Figure(r){
radius=r;
}
int main(){
Figure a(1.0);Sphere b(1.0);Column c(1.0);
cout<<"Sphere volume="<<b.volume()<<"sphere area="<<b.area()<<endl;
cout<<"Column area="<<c.area()<<"column volume="<<c.volume()<<endl;
}
关键词: