设计一个点类point,再设计一个矩形类,矩形类使用point类的两个坐标点作为矩形的对角顶点,并可以输出4个坐标值和面积。使用测试程序验证程序。


源程序:

//1.设计一个点类 Point,再设计一个矩形类,矩形类使用 Point 类的两个坐标点作为矩形的对

//角顶点。并可以输出 4 个坐标值和面积。使用测试程序验证程序。

#include <iostream>

using namespace std;

class Point //点类

{

private:

  int x, y;//私有成员变量,坐标

public :

  Point()//无参数的构造方法,对 xy 初始化

  {

    x = 0;

    y = 0;

  }

  Point(int a, int b)//又参数的构造方法,对 xy 赋值

  {

    x = a;

    y = b;

  }

  void setXY(int a, int b)//设置坐标的函数

  {

    x = a;

    y = b;

  }

  int getX()//得到 x 的方法

  {

    return x;

  }

  int getY()//得到有的函数

  {

    return y;

  }

};

class Rectangle //矩形类

{

private:

  Point point1, point2, point3, point4;//私有成员变量,4 个点的对象

public :

  Rectangle();//类 Point 的无参构造函数已经对每个对象做初始化啦,这里不用对每个点多初始化了

  Rectangle(Point one, Point two)//用点对象做初始化的,构造函数,1 和 4 为对角顶点

  {

    point1 = one;

    point4 = two;

    init();

  }

  Rectangle(int x1, int y1, int x2, int y2)//用两对坐标做初始化,构造函数,1 和 4为对角顶点

  {

    point1.setXY(x1, y1);

    point4.setXY(x2, y2);

    init();

  }

  void init()//给另外两个点做初始化的函数

  {

    point2.setXY(point4.getX(), point1.getY() );

    point3.setXY(point1.getX(), point4.getY() );

  }

  void printPoint()//打印四个点的函数

  {

    cout<<"A:("<< point1.getX() <<","<< point1.getY() <<")"<< endl;

    cout<<"B:("<< point2.getX() <<","<< point2.getY() <<")"<< endl;

    cout<<"C:("<< point3.getX() <<","<< point3.getY() <<")"<< endl;

    cout<<"D:("<< point4.getX() <<","<< point4.getY() <<")"<< endl;

  }

  int getArea()//计算面积的函数

  {

    int height, width, area;

    height = point1.getY() - point3.getY();

    width = point1.getX() - point2.getX();

    area = height * width;

    if(area > 0)

      return area;

    else

    return -area;

  }

};

void main()

{

  Point p1(-15, 56), p2(89, -10);//定义两个点

  Rectangle r1(p1, p2);//用两个点做参数,声明一个矩形对象 r1

  Rectangle r2(1, 5, 5, 1);//用两队左边,声明一个矩形对象 r2

  cout<<"矩形 r1 的 4 个定点坐标:"<< endl;

  r1.printPoint();

  cout<<"矩形 r1 的面积:"<< r1.getArea() << endl;

  cout<<"\n 矩形 r2 的 4 个定点坐标:"<< endl;

  r2.printPoint();

  cout<<"矩形 r2 的面积:"<< r2.getArea() << endl;

}

 运行结果:


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



猜您在找 用C#设计一个简单的Windows应用程序,在文本框中输入两个点的坐标值,单击“计算“时显示两点之间的距离。如图所示:要求定义一个 Point类,包括 (1)两个私有字段表示两个坐标值。 (2)一个构造函数通过传入的参数对坐标值初始化。 (3)两个只读属性对坐标值的读取。 (4)一个方法包含一个Point类对象作为形参,计算该对象和自己的距离。 用C#设计控制台应用程序,计算矩形的周长和面积。要求在程序中定义一个类,其中包含两个字段用于存储矩形的长和宽,包含带参构造函数完成对字段的初始化,包含两个方法用于计算矩形的面积和周长。主函数中,输入矩形长和宽,实例化一个矩形,能够输出矩形的周长和面积。 使用类计算矩形的面积 Leetcode练习(Python):数学类:第223题:矩形面积:在二维平面上计算出两个由直线构成的矩形重叠后形成的总面积。 每个矩形由其左下顶点和右上顶点坐标表示,如图所示。 28.按要求编写一个Java应用程序: (1)定义一个类,描述一个矩形,包含有长、宽两种属性,和计算面积方法。 (2)编写一个类,继承自矩形类,同时该类描述长方体,具有长、宽、高属性, 和计算体积的方法。 (3)编写一个测试类,对以上两个类进行测试,创建一个长方体,定义其长、 宽、高,输出其底面积和体积。 按要求编写一个Java应用程序: (1)定义一个类,描述一个矩形,包含有长、宽两种属性,和计算面积方法。 (2)编写一个类,继承自矩形类,同时该类描述长方体,具有长、宽、高属性, 和计算体积的方法。 (3)编写一个测试类,对以上两个类进行测试,创建一个长方体,定义其长、 宽、高,输出其底面积和体积。 通过继承Rect类编写一个具有确定位置的矩形类PlainRect,其确定位置用 矩形的左上角坐标来标识,包含: 添加两个属性:矩形左上角坐标startX和startY。 两个构造方法: 带4个参数的构造方法,用于对startX、startY、width和height属性 初始化; 不带参数的构造方法,将矩形初始化为左上角坐标、长和宽都为0 的矩形; 添加一个方法: 判断某个点是否在矩形内部的方法 按要求编写一个Java应用程序: (1)编写一个矩形类Rect,包含: 两个属性:矩形的宽width;矩形的高height。 两个构造方法: 1.一个带有两个参数的构造方法,用于将width和height属性初化; 2.一个不带参数的构造方法,将矩形初始化为宽和高都为10。 两个方法: 求矩形面积的方法area() 求矩形周长的方法perimeter() (2)通过继承Rect类编写一个具有确定位 按要求编写一个Java应用程序: (1)编写一个矩形类Rect,包含: 两个属性:矩形的宽width;矩形的高height。 两个构造方法: 1.一个带有两个参数的构造方法,用于将width和height属性初化; 2.一个不带参数的构造方法,将矩形初始化为宽和高都为10。 两个方法: 求矩形面积的方法area() 求矩形周长的方法perimeter() (2)通过继承Rect类编写一个具有确定位 25.按要求编写一个Java应用程序: (1)编写一个矩形类Rect,包含: 两个属性:矩形的宽width;矩形的高height。 两个构造方法: 1.一个带有两个参数的构造方法,用于将width和height属性初化; 2.一个不带参数的构造方法,将矩形初始化为宽和高都为10。 两个方法: 求矩形面积的方法area() 求矩形周长的方法perimeter() (2)通过继承Rect类编写一个具有
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM