VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 966|回复: 7

帮我改进这个程序~

[复制链接]

1

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-2-12 21:30:01 | 显示全部楼层 |阅读模式
//定义一个类BOX,四方合子,要求计算出它的体积和表面积.

#include<iostream.h>
class BOX
{  public:
        float x,y,z,v,b;
        void Showv()
        {v=x*y*z;
         cout<<v<<endl;};
        void Showb()
        {b=2*(x*y+x*z+y*z);
     cout<<b<<endl;};
};
void main()
{   BOX obj;
    obj.x=10;obj.y=3;obj.z=9;
        cout<<"该合子的体积为:";
        obj.Showv();
        cout<<"该合子的表面积为:";
        obj.Showb();
}

偶还菜,写了一个程序,但觉得可读性不是很好,,尤其是在BOX类中,,哪位帮我改进下呀,,,,还有,如果用#include<iostream>作头文件,则运行出错,为什么?谢谢了!
回复

使用道具 举报

0

主题

6

帖子

11.00

积分

新手上路

Rank: 1

积分
11.00
发表于 2020-2-14 02:33:46 | 显示全部楼层
#include<iostream.h>
class BOX
{  
public:
        BOX(float a,float b,float c):x(a),y(b),z(c);

        float GetV()
        {
                return x*y*z;
        }
       
        void GetB()
        {
                return 2*(x*y+x*z+y*z);
        }
private:
        float x,y,z;
};

void main()
{   
        BOX obj(10.0,3.0,9.0);
        cout<<"该合子的体积为:"<<obj.GetV();
       
        cout<<"该合子的表面积为:"<<obj.GetB();
}

大概吧,就差不多这个意思了
回复

使用道具 举报

0

主题

3

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2020-4-10 12:15:01 | 显示全部楼层
#include<iostream>
using namespace std;//加这一句
回复

使用道具 举报

0

主题

2

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-8-8 14:30:01 | 显示全部楼层
加左一个
public:
BOX(int x1,int y1,int z1)
{x =x1;y = y1;z= z1;}
则可以 BOX ojb(10,3,9);
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-8-11 10:45:01 | 显示全部楼层
x,y,z,v,b一般来说都是私有成员
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-8-11 11:00:01 | 显示全部楼层
参数设为私有成员
函数设为inline
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-8-11 11:15:01 | 显示全部楼层
#include<iostream.h>
using namespace std;
class BOX
{  
public:
float x,y,z,v,b;
void Showv()
{
v=x*y*z;
cout<<v<<endl;
};

void Showb()
{
  b=2*(x*y+x*z+y*z);
  cout<<b<<endl;};
};

};
void main()
{   
    BOX obj;
    obj.x=10;obj.y=3;obj.z=9;
    cout<<"该盒子的体积为:";
    obj.Showv();
    cout<<"该盒子的表面积为:";
    obj.Showb();
}
回复

使用道具 举报

0

主题

3

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2020-8-11 16:00:01 | 显示全部楼层
#include<iostream>

class BOX
{
public:

        BOX(float lo,float wi,float hi)
                 :m_long(lo),m_width(wi),m_height(hi)
        {
        }

  void BoxVolume()
  {
          m_volume=m_long*m_width*m_height;
          std::cout<<m_volume<<std::endl;
  };

  void BoxArea()
  {
      m_area=2*(m_long*m_width+m_long*m_height+m_width*m_height);
      std::cout<<m_area<<std::endl;
  };

private:
  float m_long,m_width,m_height;
  float m_volume,m_area;


};

void main()
{   
        BOX obj(10,3,9);

       
        std::cout<<"该盒子的体积为:";
         obj.BoxVolume();

         std::cout<<"该盒子的表面积为:";
         obj.BoxArea();
}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表