第3周项目1-三角形类

来源:互联网 发布:网络终端机密码 编辑:程序博客网 时间:2024/06/05 08:56

问题及代码:

/* *Copyright(c)2014,烟台大学计算机学院 *Allrights reserved. *文件名称:MADE94.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();//计算三角形的周长double area();//计算并返回三角形的面积private:double a,b,c; //三边为私有成员数据};int main(){Triangle tri1;//定义三角形类的一个实例(对象)tri1.setABC(4,5,6);//为三边置初值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;}//请在下面定义Triangle类中的各个成员函数void Triangle::setABC(double x, double y, double z){    if(x+y>z&&x+z>y&&z+y>x)    {        a=x;b=y;c=z;    }    else    {        cout<<"wrong date!";        exit(0);    }}void Triangle::getABC(double *x, double *y, double *z){    *x=a;*y=b;*z=c;}double Triangle::perimeter(){    return a+b+c;}double Triangle::area(){    double r;    r=(a+b+c)/2;    return sqrt(r*(r-a)*(r-b)*(r-c));}


运行结果:


0 0
原创粉丝点击