您的位置:首页 > 其它

创建一个三角形类并且通过成员函数计算三角形的周长和面积《1》

2014-05-16 16:05 726 查看
首先定义一个三角形类

class Triangle//三角形类
{
public:
	double getA(void);//得到a的值
	double getB(void);//得到b的值
	double getC(void);//得到c的值
	void setA(double x);//设置a的值
	void setB(double y);//设置b的值
	void setC(double z);//设置c的值
	bool isTriangle(void);//取三边的值
	double Perimeter(void);//计算三角形的周长
	double Area(void);//计算并返回三角形的面积

private:
	double a, b, c; //三边为私有成员数据
};


然后定义成员函数

函数名:setA()

函数功能:设置a的值

void Triangle::setA(double x)//设置a的值
{
	a = x;
}


函数名:setB()

函数功能:设置b的值

void Triangle::setB(double y)//设置b的值
{
	b = y;
}


函数名:setC()

函数功能:设置c的值

void Triangle::setC(double z)//设置c的值
{
	c = z;
}


函数名:getA()

函数功能:得到a的值

double Triangle::getB(void)//得到b的值
{
	return b;
}


函数名:getB()

函数功能:得到b的值

double Triangle::getB(void)//得到c的值
{
	return b;
}


函数名:getC()

函数功能:得到c的值

double Triangle::getC(void)//得到c的值
{
	return c;
}


函数名:isTriangle(void)

函数功能:判断三边能否构成三角形

bool Triangle::isTriangle(void)//判断三边能否构成三角形
{
	if(a<=0 || b<=0 || c<=0 || (a+b<=c) || (a-b>=c))
	{
		return false;
	}
	else
	{
		return true;
	}
}


函数名:Perimeter(void)

函数功能:计算三角形的周长

double Triangle::Perimeter(void)//计算三角形的周长
{
	double sum = a + b + c;
	
	return sum;
}


函数名:Area(void)

函数功能:计算三角形的面积

double Triangle::Area(void)//计算并返回三角形的面积
{
	//使用海伦公式计算三角形的面积
	double p = (a + b + c) / 2;

	double q = p*(p-a)*(p-b)*(p-c);

	double s = sqrt(q);

	return s;
}


程序的全部代码:

#include <iostream>
#include <cmath>

using namespace std;

class Triangle//三角形类 { public: double getA(void);//得到a的值 double getB(void);//得到b的值 double getC(void);//得到c的值 void setA(double x);//设置a的值 void setB(double y);//设置b的值 void setC(double z);//设置c的值 bool isTriangle(void);//取三边的值 double Perimeter(void);//计算三角形的周长 double Area(void);//计算并返回三角形的面积 private: double a, b, c; //三边为私有成员数据 };

int main()
{
Triangle tri1; //定义三角形类的一个实例(对象)

double x,y,z;

cout<<"请输入三角形的三边:";
cin>>x>>y>>z;

//为三边置初值
tri1.setA(x);
tri1.setB(y);
tri1.setC(z);

if(tri1.isTriangle())
{
cout<<"三条边为:"<<tri1.getA()<<','<<tri1.getB()<<','<<tri1.getC()<<endl;
cout<<"三角形的周长为:"<< tri1.Perimeter()<<'\t'<<"面积为:"<< tri1.Area()<<endl;
}
else
{
cout<<"不能构成三角形"<<endl;
}

return 0;
}

void Triangle::setA(double x)//设置a的值 { a = x; }
void Triangle::setB(double y)//设置b的值 { b = y; }
void Triangle::setC(double z)//设置c的值 { c = z; }

double Triangle::getA(void)//得到a的值
{
return a;
}

double Triangle::getB(void)//得到b的值 { return b; }

double Triangle::getC(void)//得到c的值 { return c; }

bool Triangle::isTriangle(void)//判断三边能否构成三角形 { if(a<=0 || b<=0 || c<=0 || (a+b<=c) || (a-b>=c)) { return false; } else { return true; } }

double Triangle::Perimeter(void)//计算三角形的周长 { double sum = a + b + c; return sum; }

double Triangle::Area(void)//计算并返回三角形的面积 { //使用海伦公式计算三角形的面积 double p = (a + b + c) / 2; double q = p*(p-a)*(p-b)*(p-c); double s = sqrt(q); return s; }


执行结果: 当输入 3 4 5时



当两边之和小于第三边时



当两边之差大于第三边时



当三边中有一边是负数时




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐