第五周项目一:三角形类(默认构造函数)@(2)
/** 程序的版权和版本声明部分* Copyright (c)2013, 烟台大学计算机学院学生* All rightsreserved.* 文件名称: date.cpp * 作 者: 李蒙 * 完成日期: 2013年 3 月 29 日* 版本号: v1.0 * 输入描述:使用有默认参数的构造函数,不给定实参时,默认边长为1;* 问题描述:设计三角形类,通过增加构造函数,使对象在定义时能够进行初始化* 输出:*/#include<iostream>#include<Cmath>using namespace std;class Triangle{public:Triangle (int x=1,int y=1,int z=1);bool isTriangle();double perimeter(void);//计算三角形的周长double area(void);//计算并返回三角形的面积void showMessage();private:double a,b,c; //三边为私有成员数据};Triangle::Triangle(int x,int y,int z){a=x;b=y;c=z;}bool Triangle::isTriangle() { if((a+b)>c&&(a+c)>b&&(b+c)>a) return true; else return false;} void Triangle:: showMessage(){if(isTriangle()){cout<<"三角形的三边长分别为:"<<a<<" "<<b<<" "<<c<<endl;cout<<"该三角形的周长为:"<< perimeter()<<'\t'<<"面积为:"<< area()<<endl;}elsecout<<"三角形的三边长分别为:"<<a<<" "<<b<<" "<<c<<endl;cout<<"不能构成三角形!"<<endl;}double Triangle::perimeter(void){return (a+b+c);}double Triangle::area(void){double p;p=(a+b+c)/2;return sqrt(p*(p-a)*(p-b)*(p-c));}void main(void){Triangle Tri1;//定义三角形类的一个实例(对象),要求执行一个默认构造函数,三边初值均为1Tri1.showMessage();Triangle Tri2(2);//只给定一个实参Tri2.showMessage();}
输出结果:
心得体会:!!!