/* (程序头部注释开始)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称: Triangle1-1.cpp
* 作 者: 计114-3 王兴锋
* 完成日期: 2012 年 3 月 19 日
* 版 本 号: V 1.0
* 对任务及求解方法的描述部分
* 输入描述:设计三角形类,通过增加构造函数,使对象在定义时能够进行初始化
* 问题描述:
(3)使用默认参数的构造函数,不给定实参时,默认边长为1;
* 程序输出:按要求输出
###上机感言:通过要求,体会各种类初始化的特点并熟练掌握。
* 程序头部的注释结束
*/
#include <iostream>
#include <Cmath>
using namespace std;
class Triangle
{
public:
Triangle(float x = 1, float y = 1, float z = 1);//参数构造函数
float perimeter(void);//计算三角形的周长
float area(void);//计算并返回三角形的面积
void showMessage();
private:
float a,b,c; //三边为私有成员数据
};
Triangle::Triangle(float x, float y, float z)
{
if (x + y > z && x + z > y && y + z > x && x > 0 && y > 0 && z > 0)
a = x, b = y, c = z;
else
{
cout << "您的赋值有误!" << endl;
exit(0);
}
}
float Triangle::perimeter(void)
{
return a + b + c;
}
float Triangle::area(void)
{
float p;
p = (a + b + c) / 2;
return sqrt(p * (p - a) * (p - b) * (p - c));
}
void Triangle:: showMessage()
{
cout << "三角形的三边长分别为:" << '\t' << a << '\t' << b << '\t' << c<< endl;
cout << "该三角形的周长为:" << perimeter() << '\t' << "面积为:" << area() << endl <<endl;
}
void main(void)
{
//使用默认参数的构造函数,不给定实参时,默认边长为1
Triangle Tri1; //定义三角形类的一个实例(对象)
Tri1.showMessage();
//指定参数,按指定的参数进行赋值
Triangle Tri2(7,8,9); //定义三角形类的一个实例(对象)
Tri2.showMessage();
}
《第五周实验报告1-2》---增加构造函数,使对象在定义时能够进行初始化
最新推荐文章于 2021-07-30 16:16:24 发布