第五周实验报告(3)

来源:互联网 发布:广元广电网络宽带资费 编辑:程序博客网 时间:2024/05/30 23:39

/* (程序头部注释开始)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:         长方体                    
* 作    者:              李瑞               
* 完成日期:    2012    年     3  月   22     日
* 版 本 号:         

* 对任务及求解方法的描述部分
* 输入描述:

* 问题描述:

【任务3】编写基于对象的程序,求5个长方柱的体积和表面积。长方柱类的数据成员包括长(length)、宽(width)、高(heigth)等。另外:(1) 需要定义长方柱类,5个长方柱采用一个对象数组表示;(2) 前4个长方柱(即数组的前4个元素)要在定义数组时初始化,其中前3个直接给出参数初始化,第4个用默认构造函数初始化;第5个长方柱定义时不初始化,而是由键盘输入长、宽、高赋值;(3) 输出这5个长方柱的体积和表面积; 

* 程序输出:
* 程序头部的注释结束
*/

#include<iostream>     using namespace std;     class Cuboid    {    public:          Cuboid();        Cuboid(double a, double b, double c):length(a),width(b),heigth(c) {}        void set_cuboid();        double volume();        double areas();        void display();          private:        double length;        double width;        double heigth;        };        Cuboid::Cuboid()    {        length = 7;             width = 8;             heigth = 9;    }      int main()    {        Cuboid c[5] =         {            Cuboid(11, 12, 13),                         Cuboid(14, 15, 16),            Cuboid(17, 18, 19),Cuboid()        };              for(int i = 0; i < 4; ++i)        {            c[i].volume();                     c[i].areas();                     c[i].display();        }              c[4].set_cuboid();              c[4].volume();              c[4].areas();              c[4].display();              return 0;    }          void Cuboid::set_cuboid()    {        cout << "请输入长方体的长、宽、高:" << endl;              while(1)        {            cin >> length >> width >> heigth;                      if (length <= 0 || width <= 0 || heigth <= 0)            {                cout << "数据非法,请重新输入:" << endl;            }            else             {                break;            }        }    }      double Cuboid::volume()    {              return (length * width * heigth);    }      double Cuboid::areas()    {        return (2 * (length * width + length * heigth  + width * heigth));    }      void Cuboid::display()    {        cout << "长:" << length << ",  宽:" << width << ",  高:" << heigth << " 的长方体   体积是:" << volume() << ",  表面积是" << areas() <<endl;    }    


运行结果 :


上机感言:

基于对象的程序,先建立长方体类,再用数组操作。