C++程序设计 矩形Rectangle类,通过Rectangle类计算周长和面积。

功能要求:1.Rectangle类有两个成员,长:m_length、宽:m_width(初始化为1).2.类中具有的成员函数包括:1.无参的构造函数Rectangle()... 功能要求:
1.Rectangle类有两个成员,长:m_length、宽:m_width(初始化为1).
2.类中具有的成员函数包括:
1.无参的构造函数Rectangle()
2.有参的构造函数Rectangle(int length,int with)
3.Setwidth(int a) 设置矩形长的值。设置之前调用test验证长宽是否合法,如果不合法,则不进行修改,并提示错误信息。
4.Setlength(int b) 设置矩形宽的值。设置之前调用test验证长宽是否合法,如果不合法,则不进行修改,并提示错误信息。
5.Getwidth()查看当前矩形的长
6.Getlength()查看当前矩形的宽
7.test(int length,int with) 矩形长和宽的范围是[1…20],验证传进来的长宽是否合法
8.perimeter() 根据长宽计算矩形周长
9.ares()根据长宽计算矩形面积
3.在主函数main里面产生Rectangle类的对象,调用类的成员函数,实现矩形长宽的设置,查看,并计算矩形的周长和面积。
展开
 我来答
qdx102
2014-06-16 · TA获得超过107个赞
知道答主
回答量:75
采纳率:100%
帮助的人:73.4万
展开全部
class Rectangle
{
public:

Rectangle()

:m_width(1),m_length(1)

{

}

Rectangle(int length,int width)

{

if (test(length,width)) {

m_length = length;

m_width = width;

} else {

m_length = 1;

m_width = 1;

}

}

~Rectangle(){}

void Setwidth(int a)

{

if (test(m_length,a)) {

m_width = a;

} else {

std::cerr << "width must be a value between 1 to 20" << std::endl;

}

}

void setlength(int b)

{

if (test(b,m_width)) {

m_length = b;

} else {

std::cerr << "length must be a value between 1 to 20" << std::endl;

}

}

int Getwidth() const

{

return m_width;

}

int Getlength() const

{

return m_length;

}

bool test(int length,int width)

{

return (length >= 1 && length <= 20 && width >= 1 && width <= 20);

}

int perimeter() const

{

return ((m_width + m_length ) << 1);

}

int ares() const

{

return m_width * m_length;

}

friend std::ostream & operator << (std::ostream &os,const Rectangle &rect)

{

os << "Rectangle [ width : " << rect.m_width

<< " length : " << rect.m_length << " perimeter : "

<< rect.perimeter() << " ares : " << rect.ares()

<< " ]" << std::endl;

return os;

}

private:

int m_width,m_length;

};

int main()
{

Rectangle rect;

rect.setlength(10);

rect.Setwidth(15);

std::cout << rect ;

return 0;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式