码迷,mamicode.com
首页 > 其他好文 > 详细

类的组合

时间:2015-06-26 17:58:39      阅读:111      评论:0      收藏:0      [点我收藏+]

标签:

A.计算矩形面积
Time Limit: 1000 MS Memory 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;

 

类的组合

标签:

原文地址:http://www.cnblogs.com/zeross/p/4602779.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!