/*Copyright (c)2016,烟台大学计算机与控制工程学院
*All rights reserved.
*文件名称:main.cpp
*作 者:舒文超
*完成日期:2016年3月27日
*版 本 号:v1.0
*
*问题描述:写出各函数成员的定义,完成程序。
*/
#include<iostream>
#include<cmath>
using namespace std;
class Triangle
{
public:
Triangle(double x=1.0,double y=1.0,double z=1.0)
{
a=x;
b=y;
c=z;
};//置三边的值,注意要能成三角形
Triangle(Triangle &p);
double getA();
double getB();
double getC();
void showMessage();
double perimeter();//计算三角形周长
double area();//计算并返回三角形的面积
bool isTriangle()
{
if(a+b>c&&a+c>b&&b+c>a)
return true;
else
return false;
}
private:
double a,b,c;//三边为私有成员数据
};
Triangle::Triangle(Triangle &p)
{
a=p.a;
b=p.b;
c=p.c;
}
void Triangle::showMessage()
{
if(isTriangle())
{
cout<<"三条边为:"<<Triangle::getA()<<','<<Triangle::getB()<<','<<Triangle::getC()<<endl;
cout<<"三角形的周长为:"<<Triangle::perimeter()<<'\t'<<"面积为:"<<Triangle::area()<<endl;
}
else
cout<<"三边无法构成三角形"<<endl;
}
double Triangle::getA()
{
return a;
}
double Triangle::getB()
{
return b;
}
double Triangle::getC()
{
return c;
}
double Triangle::perimeter()
{
return(a+b+c);
}
double Triangle::area()
{
double p;
p=(a+b+c)/2.0;
return(sqrt(p*(p-a)*(p-b)*(p-c)));
}
int main()
{
Triangle tri1(3,4,5);//定义三角形类的一个实例(对象)
tri1.showMessage();
Triangle tri2(tri1);//调用复制构造函数
tri2.showMessage();
return 0;
}
第五周项目一 三角形类雏形(5)
最新推荐文章于 2016-04-04 21:33:15 发布