第三周项目一 三角形类1

来源:互联网 发布:淘宝海外版怎么切换 编辑:程序博客网 时间:2024/05/21 12:49
/**Copyright (c) 2014, 烟台大学计算机学院*All rights reserved.*文件名称:test.cpp*作者:于凯*完成日期:2015年3月25日*版本号:v1.0**/#include<iostream>#include<Cmath>#include<cstdlib>using namespace std;class Triangle{public:    void setABC(double x, double y, double z);//置三边的值,注意要能成三角形    void getABC(double *x, double *y, double *z);//取三边的值    double perimeter(void);//计算三角形的周长    double area(void);//计算并返回三角形的面积private:    double a,b,c; //三边为私有成员数据};int main(){    double a,b,c;    Triangle tri1;  //定义三角形类的一个实例(对象)    cout<<"输入三个边:";    cin>>a>>b>>c;    tri1.setABC(a,b,c); //为三边置初值    double x,y,z;    tri1.getABC (&x,&y,&z);   //将三边的值为x,y,z赋值    cout<<"三条边为:"<<x<<'\t'<<y<<'\t'<<z<<endl;    cout<<"三角形的周长为:"<< tri1.perimeter()<<'\t'<<"面积为:"<< tri1.area()<<endl;    return 0;}void Triangle::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;        exit(0);    }}void Triangle::getABC(double *x,double *y,double *z){    *x=a;*y=b;*z=c;}double Triangle::perimeter(void){    return(a+b+c);}double Triangle::area(void){    double s,area;    s=(a+b+c)/2;    area=sqrt(s*(s-a)*(s-b)*(s-c));    return(area);}

运行结果:

0 0