6.14给出抽象基类建立派生类计算正方体,球体,圆柱体的表面积及体积
来源:互联网 发布:php爬虫框架beanbun 编辑:程序博客网 时间:2024/04/28 21:58
#include<iostream>
using namespace std;
class container{
protected:
double radius;
public:
container(double r)
{radius=r;
}
virtual double surface_area()=0;
virtual double volume()=0;
};
class cube:public container{
public:
cube(double r):container(r)
{ };
double surface_area()
{cout<<"这个正方体的表面积为:"<<6*radius*radius<<endl;
}
double volume()
{cout<<"这个正方体的体积为:"<<radius*radius*radius<<endl;
}
};
class sphere:public container{
public:
sphere(double r):container(r){
};
double surface_area()
{cout<<"这个球体的表面积为:"<<4*3.14*radius*radius<<endl;
}
double volume()
{cout<<"这个球的体积为:"<<4/3*3.14*radius*radius*radius<<endl;
}
};
class cyclinder:public container{
public:
cyclinder(double r,double h):container(r){
high=h;
}
double surface_area()
{cout<<"这个圆柱体的表面积为:"<<2*3.14*radius*radius+3.14*radius*high<<endl;
}
double volume()
{cout<<"这个圆柱体的体积为:"<<3.14*radius*radius*high<<endl;
}
protected:
double high;
};
int main()
{
container *p;
cube obj1(6.0);
sphere obj2(5.0);
cyclinder obj3(6.0,5.0);
p=&obj1;
p->surface_area();
p->volume();
p=&obj2;
p->surface_area();
p->volume();
p=&obj3;
p->surface_area();
p->volume();
return 0;
}
using namespace std;
class container{
protected:
double radius;
public:
container(double r)
{radius=r;
}
virtual double surface_area()=0;
virtual double volume()=0;
};
class cube:public container{
public:
cube(double r):container(r)
{ };
double surface_area()
{cout<<"这个正方体的表面积为:"<<6*radius*radius<<endl;
}
double volume()
{cout<<"这个正方体的体积为:"<<radius*radius*radius<<endl;
}
};
class sphere:public container{
public:
sphere(double r):container(r){
};
double surface_area()
{cout<<"这个球体的表面积为:"<<4*3.14*radius*radius<<endl;
}
double volume()
{cout<<"这个球的体积为:"<<4/3*3.14*radius*radius*radius<<endl;
}
};
class cyclinder:public container{
public:
cyclinder(double r,double h):container(r){
high=h;
}
double surface_area()
{cout<<"这个圆柱体的表面积为:"<<2*3.14*radius*radius+3.14*radius*high<<endl;
}
double volume()
{cout<<"这个圆柱体的体积为:"<<3.14*radius*radius*high<<endl;
}
protected:
double high;
};
int main()
{
container *p;
cube obj1(6.0);
sphere obj2(5.0);
cyclinder obj3(6.0,5.0);
p=&obj1;
p->surface_area();
p->volume();
p=&obj2;
p->surface_area();
p->volume();
p=&obj3;
p->surface_area();
p->volume();
return 0;
}
0 0
- 6.14给出抽象基类建立派生类计算正方体,球体,圆柱体的表面积及体积
- 第十四周 项目三:定义抽象类CSolid,含有表面积及体积的纯虚数,派生出CCube,CBall,CCylinder,分别表示正方体、球体及圆柱体
- 第13周任务4(设计一个抽象类CSolid,含有两个求表面积及体积的纯虚函数。设计个派生类CCube、CBall、CCylinder,分别表示正方体、球体及圆柱体)
- 设计一个抽象类CSolid,含有用于求表面积及体积的两个纯虚函数。设计派生类CCube、CBall、CCylinder,分别表示正方体、球体及圆柱体。在main()函数中,定义CSolid *p;(p
- 设计一个抽象类CSolid,含有用于求表面积及体积的两个纯虚函数。设计派生类CCube、CBall、CCylinder,分别表示正方体、球体及圆柱体。在main()函数中,定义CSolid *p;(p
- 《C++第十三周实验报告4-1》---设计一个抽象类CSolid,含有两个求表面积及体积的纯虚函数。 设计个派生类CCube、CBall、CCylinder,分别表示正方体、球体及圆柱体。
- 圆柱体的表面积和体积
- 计算圆柱体的表面积
- 第十三周任务四(抽象类CSolid,含有两个求表面积及体积的纯虚函数。设计个派生类CCube、CBall、CCylinder)
- C++第十三周【任务4】设计一个抽象类CSolid,含有两个求表面积及体积的纯虚函数,同时设计个派生类CCube、CBall、CCylinder
- 计算圆柱体的体积
- 求圆柱体的表面积和体积
- 第十六周 圆柱体的表面积和体积
- 求圆柱体的表面积与体积
- 求球体的表面积和体积
- 第1周 项目(A)-3计算圆柱体表面积及体积
- C++计算圆柱体的表面积
- 我的第四个C语言:计算圆柱体的表面积和体积。
- 【c语言】将一个数的二进制序列逆序,然后输出逆序之后的二进制序,所对应的数
- 面试题14:调整数组顺序是奇数位于偶数前面
- WebService(实践)——天气预报WebService
- 继承,设计模式,final
- Jenkins(二)—— 构建
- 6.14给出抽象基类建立派生类计算正方体,球体,圆柱体的表面积及体积
- 测试wifi覆盖范围的软件
- oracle存储过程基本语法
- 【c语言】判断一个数是奇偶数
- SAX读取xml文件的方法总结
- cocos之Shader
- 继承,抽象类,接口,多态
- 六月英语总结
- Struts中的常量