/* (程序头部注释开始)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:设计三角形类,通过增加构造函数,使对象在定义时能够进行初始化
* 作 者:雷恒鑫
* 完成日期:2012 年 03 月 18 日
* 版 本 号: V1.2
* 对任务及求解方法的描述部分
* 输入描述:
* 问题描述:
* 程序输出:
* 程序头部的注释结束
运行结果:
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:设计三角形类,通过增加构造函数,使对象在定义时能够进行初始化
* 作 者:雷恒鑫
* 完成日期:2012 年 03 月 18 日
* 版 本 号: V1.2
* 对任务及求解方法的描述部分
* 输入描述:
* 问题描述:
* 程序输出:
* 程序头部的注释结束
*/
#include<iostream>
#include<cmath>
using namespace std;
class Triangle
{
public:
Triangle(float d,float k,float e=1);
float perimeter(void);//计算三角形的周长
float area(void);//计算并返回三角形的面积
void showMessage();
private:
float a,b,c; //三边为私有成员数据
};
void main(void)
{
Triangle Tri3(0.5,1);
Tri3.showMessage();
system("PAUSE");
}
Triangle::Triangle(float d,float k,float e)
{
a=d;
b=k;
c=e;
if (a+b<=c || a+c<=b || b + c <=a || a-b>=c ||a-c>=b || b-c>=a)
{
cout<<"您输入的值不能构成三角形,请重新置值!";
exit(0);
}
}
float Triangle::perimeter(void) //计算三角形的周长
{
float p;
p=a+b+c;
return p;
}
float Triangle::area(void)//计算并返回三角形的面积
{
float s,m;
m=(a+b+c)/2;
s=sqrt(m*(m-a)*(m-b)*(m-c));
return s;
}
void Triangle::showMessage()
{
cout<<"三角形的三边长分别为:"<<a<<'\t'<<b<<'\t'<<c<<endl;
cout<<"该三角形的周长为:"<<perimeter()<<'\t'<<"面积为:"<<area()<<endl<<endl;
}
运行结果:
经验积累:
1.我学会了使用默认构造函数