您的位置:首页 > 其它

第五周项目(1)-构造三角形类(2)

2016-03-30 13:22 344 查看

/*

*copyright (c) 2016,烟台大学计算机学院

*All rights reserved.

*文件名称:hellow.cpp

*作者:田甜

*完成日期:2016年3月30日

*版本号:v1.0

*

*问题描述:构造三角形类

*输入描述:三角形三边

*程序输出:三角形的周长和面积

*/

问题及代码:

#include<cstdlib>
#include<iostream>
#include<cmath>

using namespace std;
class Triangle//定义三角形类
{
public:
void setABC(double x,double y,double z)
{
if(x+y>z&&x+z>y&&y+z>x)//判断输入数据是否满足条件并赋值
{a=x;b=y;c=z;}
else
cout<<"不能构成三角形"<<endl;
}

void setA(double x){a=x;};
void setB(double y){b=y;};
void setC(double z){c=z;};
double getA()
{
return a;
};

double getB()
{
return b;
};

double getC()
{
return c;
};
bool isTriangle();
double perimeter();
double area();
private:
double a,b,c;
};

double Triangle::perimeter()//计算周长
{
return a+b+c;
}

double Triangle::area()
{
double p=(a+b+c)/2;
return sqrt(p*(p-a)*(p-b)*(p-c));//计算面积

}

bool Triangle::isTriangle()
{
return (a+b>c&&b+c>a&&a+c>b);
}
int main()
{
Triangle tri1;
double x,y,z;
cout<<"请输入三角形的三边:"<<endl;
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;
}
return 0;
}


运行结果:

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