/*
* 程序的版权和版本声明部分
* Copyright (c)2012, 烟台大学计算机学院学生
* All rightsreserved.
* 文件名称: x.cpp
* 作者:徐本锡
* 完成日期: 2013年 3 月29 日
* 版本号: v1.0
* 输入描述:
* 问题描述:默认构造函数和带参数的构造函数
* 程序输出:
*/
//我的代码:
#include<iostream>
#include<cmath>
using namespace std;
class Triangle
{
public:
Triangle(double x, double y, double z);
Triangle();
double perimeter(void);//计算三角形的周长
double area(void);//计算并返回三角形的面积
void showMessage();
private:
bool isTriangle();//判断是否为三角形
double a,b,c; //三边为私有成员数据
};
bool Triangle::isTriangle()//判断是否为三角形
{
double num;int i=0;bool t=true;
do
{
if(a+b>c&&a-b<c)
{
num=a;a=b;b=c;c=num;
i++;
}
else
{
cout<<"三边构不成三角形!";
t=false;
break;
}
if(i==3)
break;
}while(i<=3);
return t;
}
double Triangle::perimeter()
{
return(a+b+c);
}
double Triangle::area()
{
double z;
z=(a+b+c)/2;
return (sqrt(z*(z-a)*(z-b)*(z-c)));
}
Triangle::Triangle()
{
a=1;b=1;c=1;
}
Triangle::Triangle(double x,double y,double z)
{
a=x;b=y;c=z;
}
void Triangle:: showMessage()
{
if(isTriangle())
{
cout<<"三角形的三边长分别为"<<a<<'\t'<<b<<'\t'<<c<<endl;
cout<<"该三角形的周长为:"<< perimeter()<<'\t'<<"面积为:"<< area()<<endl<<endl;
}
else
cout<<"不能够成三角形!"<<endl;
}
void main(void)
{
Triangle Tri1; //定义三角形类的一个实例(对象),要求执行一个默认构造函数,三边初值均为1
Tri1.showMessage();
Triangle Tri2(7,8,9); //定义三角形类的一个实例(对象)
Tri2.showMessage();
}
项目一 默认构造函数和带参数的构造函数
最新推荐文章于 2024-04-22 20:41:24 发布