您的位置:首页 > 其它

三角形类2

2014-03-22 20:07 190 查看
/*
* 程序的版权和版本声明部分
* Copyright (c)2013, 烟台大学计算机学院学生
* All rightsreserved.
* 文件名称:a.cpp
* 作    者:孔云
* 完成日期:2014年3月22日
* 版 本 号: v1.0
* 输入描述:输入三角形三边(7、8、9)。
* 问题描述:设计一个三角形类,定义成员函数,设内置函数。
* 输出描述:三角形周长、面积。
*/
#include<iostream>
#include<Cmath>
using namespace std;
class Triangle
{
private:
double a,b,c;
public:
double perimeter();
double area();
bool isTriangle();
void setA(double w)
{
a=w;
}
void setB(double u)
{
b=u;
}
void setC(double t)
{
c=t;
}
double getA()
{
return a;
}
double getB()
{
return b;
}
double getC()
{
return c;
}
};
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;
}
else
cout<<"不能构成三角形"<<endl;
return 0;
}
//请在下面定义Triangle类中的各个成员函数
bool Triangle::isTriangle()
{
while(((a<b+c)&&(a>b-c)||(a>c-b))||((b<a+c)&&(b>a-c)||(b>c-a))||((c<b+a)&&(c>b-a)||(c>a-b)))
{
return true;
}
}
double Triangle::perimeter()
{
return (a+b+c);

}
double Triangle::area()
{
double q,p;
q=(a+b+c)/2;
p=sqrt(q*(q-a)*(q-b)*(q-c));
return p;
}




心得体会:在这个程序中,类内定义了内置函数,部分成员函数在类外定义,值得注意的是,对三角形的判断是否该用bool型,是否该默认参数,容易犯错哦!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: