您的位置:首页 > 其它

类的组合

2015-06-26 17:14 225 查看
A.计算矩形面积
Time Limit: 1000 MSMemory Limit: 32768 K
Total Submit: 95 (58 users) Total Accepted: 68 (58 users) Special Judge: No
Description
已知有点类Point定义。定义一个矩形类,说明如下:

包含四个属性:左下角,右上角两个点,面积,周长。面积,周长由左下角,右上角两个点决定;成员函数有(1)构造函数及复制构造函数(2)计算矩形的面积(3)计算周长

Input
有多组数据。每组数据包含四个数据x1,y1,x2,y2,分别表示矩形的左下角横纵坐标和右上角横纵坐标。

Output
矩形的面积和周长

Sample Input
-1 -1 2 3

-5 -6 0 -1

Sample Output
12 14

25 20

Hint
知识点:类的组合

#include<iostream>
using namespace std;
class point
{
private:
int x,y;
public:
point(int xx=0,int yy=0):x(xx),y(yy){}
point (point &p);
int getx(){return x;}
int gety(){return y;}
};
point::point(point &p)
{
x=p.x;
y=p.y;
}
class rectangle
{
private:
point p1,p2;
int Ss,Cs;
public:
rectangle(point np1,point np2);
rectangle(rectangle &L);//此处只能申明一个复制构造函数 如果遇到同时求面积和周长两个量时 可在一个构造函数中进行处理
int getCs(){return Cs;}
int getSs(){return Ss;}
};
rectangle::rectangle(point np1,point np2):p1(np1),p2(np2)
{
int x=p1.getx()-p2.getx();
int y=p1.gety()-p2.gety();
Cs=x+x+y+y;
Ss=x*y;
}
rectangle::rectangle(rectangle &L):p1(L.p1),p2(L.p2)
{
Cs=L.Cs;
Ss=L.Ss;
}
int main()
{
int x1,y1,x2,y2;
while(cin>>x1>>y1>>x2>>y2)
{
point newp1(x1,y1),newp2(x2,y2);
rectangle Rectangle(newp1,newp2);
cout<<-Rectangle.getCs();
cout<<Rectangle.getSs()<<endl;此处只能由对象进行处理 用类处理是不对的
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: