用C++编写椭圆类(内详)
有两个数据成员,分别对应于椭圆的长半轴和短半轴。
有一个带参数的构造函数,其参数分别对应椭圆的长半轴和短半轴。
有一个成员函数GetArea,用于获得椭圆形的面积。
有一个成员函数GetCircumference,用于获得椭圆形的周长。
b)在main函数中,实例化一个CEllipse类的对象(长半轴和短半轴分别为7和5),然后将其面积和周长显示在屏幕上。
备注:
假设椭圆的长半轴为a,短半轴为b,那么:
椭圆面积公式: S=πab
椭圆周长公式:L=2πb+4(a-b) 展开
#include <iostream>
using namespace std;
class CEllipse{
private:
static const double PI=3.141592654;//2654;
double a,b;
public:
CEllipse(double x, double y){
//PI=3.14;
a=x;
b=y;
埋肢 }
double GetArea(){
return (PI*a*b);
}
double GetCircumference(){
return (2*PI*b+4*(a-b));
} 弯知世 猛裤
};
int main(){
//CEllipse c(10.0,10.0);
CEllipse c(7,5);
cout<<"椭圆面积: "<<c.GetArea()<<endl;
cout<<"椭圆周长: "<<c.GetCircumference()<<endl;
getchar();
return 1;
}
DEV C++下结果:
//如果你是VC6.0 那么把#include <iostream>改成<iostream.h>
//并把using namespace std;这行删除应该就可以了.
#include <iostream>仔扒
using namespace std;
class CEllipse
{
public:
CEllipse();
CEllipse(float aLongAxis,float aShortAxis);
float GetArea();
float GetCircumference();
const static float PI;
private:
float fLongAxis;
float fShortAxis;
};
int main()
{
CEllipse ellipse(7,5);
cout<高戚肆<"Area is "<<ellipse.GetArea()<<" and Circumference is "<<ellipse.GetCircumference()<<endl;
return 0;
}
CEllipse::CEllipse():fLongAxis(0.0),fShortAxis(0.0)
{
}
CEllipse::CEllipse(float aLongAxis, float aShortAxis)
{
fLongAxis=aLongAxis;
fShortAxis=aShortAxis;
}
const float CEllipse::PI=3.1415926;
float CEllipse::GetArea(){ return fLongAxis*fShortAxis*PI;}
float CEllipse::GetCircumference(){ return 2*PI*fShortAxis+4*(fLongAxis-fShortAxis); }