您的位置:首页 > 其它

第三周 课后实践:项目二——三角形类(2)

2015-03-23 13:25 288 查看
问题及代码:

#include<iostream>
#include<Cmath>
using namespace std;
class Triangle
{
public:
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(void)//计算三角形的周长
{
return a+b+c;
}
double area(void)//计算并返回三角形的面积
{
double p=(a+b+c)/2;
return sqrt(p*(p-a)*(p-b)*(p-c));
}
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;
}

bool Triangle::isTriangle()
{
return (a+b>c&&b+c>a&&a+c>b);
}


运行结果:





学习心得:

之前忘记了判断是否能构成三角形的问题,然后看了老师的答案又翻看了上学期的内容,又复习了一遍bool的用法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: