Problem E: 平面上的点和线——Point类、Line类 (V)
Description
Input
Output
Sample Input
Sample Output
HINT
Append Code
int main(){ int num, i; Point p(1, -2), q(2, -1), t; t.show(); std::cin>>num; Line line[num]; for(i = 0; i < num; i++) { line[i].readLine(); line[i].show(); } Line l1(p, q), l2(p,t), l3(q,t), l4(l1); l1.show(); l2.setLine(l1).show(); l3.show(); l4.setLine(t,q).show();}#include<iostream>using namespace std;class Point{ friend class Line;private: double x,y;public: Point(double a=0,double b=0):x(a),y(b){cout<<"Point : ("<<x<<", "<<y<<") is created."<<endl;} Point(const Point&p){x=p.x;y=p.y;cout<<"Point : ("<<x<<", "<<y<<") is copied."<<endl;} ~Point(){cout<<"Point : ("<<x<<", "<<y<<") is erased."<<endl;} void show(){cout<<"Point : ("<<x<<", "<<y<<")"<<endl;}};class Line{ friend class Point;private: Point p1,p2;public: Line(Point &p,Point &q):p1(p),p2(q){cout<<"Line : ("<<p1.x<<", "<<p1.y<<") to ("<<p2.x<<", "<<p2.y<<") is created."<<endl;} Line(double x1=0,double y1=0,double x2=0,double y2=0):p1(x1,y1),p2(x2,y2){cout<<"Line : ("<<p1.x<<", "<<p1.y<<") to ("<<p2.x<<", "<<p2.y<<") is created."<<endl;} Line(const Line&l):p1(l.p1),p2(l.p2){cout<<"Line : ("<<p1.x<<", "<<p1.y<<") to ("<<p2.x<<", "<<p2.y<<") is copied."<<endl;} ~Line(){cout<<"Line : ("<<p1.x<<", "<<p1.y<<") to ("<<p2.x<<", "<<p2.y<<") is erased."<<endl;} Line& setLine(double a,double b,double c,double d){p1.x=a;p1.y=b;p2.x=c;p2.y=d;return *this;} Line& setLine(const Point &p, const Point &q){p1=p;p2=q;return *this;} Line& setLine(const Line& l){*this=l;return *this;} void show(){cout<<"Line : ("<<p1.x<<", "<<p1.y<<") to ("<<p2.x<<", "<<p2.y<<")"<<endl;} void readLine(){char c;cin>>p1.x>>c>>p1.y>>p2.x>>c>>p2.y;}};int main(){ int num, i; Point p(1, -2), q(2, -1), t; t.show(); std::cin>>num; Line line[num]; for(i = 0; i < num; i++) { line[i].readLine(); line[i].show(); } Line l1(p, q), l2(p,t), l3(q,t), l4(l1); l1.show(); l2.setLine(l1).show(); l3.show(); l4.setLine(t,q).show();}Problem E: 平面上的点和线——Point类、Line类 (V)的更多相关文章
- Problem D: 平面上的点和线——Point类、Line类 (IV)
Description 在数学上,平面直角坐标系上的点用X轴和Y轴上的两个坐标值唯一确定,两点确定一条线段.现在我们封装一个“Point类”和“Line类”来实现平面上的点的操作. 根据“append ...
- Problem C: 平面上的点和线——Point类、Line类 (III)
Description 在数学上,平面直角坐标系上的点用X轴和Y轴上的两个坐标值唯一确定,两点确定一条线段.现在我们封装一个“Point类”和“Line类”来实现平面上的点的操作. 根据“append ...
- Problem B: 平面上的点和线——Point类、Line类 (II)
Description 在数学上,平面直角坐标系上的点用X轴和Y轴上的两个坐标值唯一确定,两点确定一条线段.现在我们封装一个“Point类”和“Line类”来实现平面上的点的操作. 根据“append ...
- Problem A: 平面上的点和线——Point类、Line类 (I)
Description 在数学上,平面直角坐标系上的点用X轴和Y轴上的两个坐标值唯一确定,两点确定一条线段.现在我们封装一个“Point类”和“Line类”来实现平面上的点的操作. 根据“append ...
- Problem F: 平面上的点——Point类 (VI)
Description 在数学上,平面直角坐标系上的点用X轴和Y轴上的两个坐标值唯一确定.现在我们封装一个“Point类”来实现平面上的点的操作. 根据“append.cc”,完成Point类的构造方 ...
- Problem E: 平面上的点——Point类 (V)
Description 在数学上,平面直角坐标系上的点用X轴和Y轴上的两个坐标值唯一确定.现在我们封装一个“Point类”来实现平面上的点的操作. 根据“append.cc”,完成Point类的构造方 ...
- Problem D: 平面上的点——Point类 (IV)
Description 在数学上,平面直角坐标系上的点用X轴和Y轴上的两个坐标值唯一确定.现在我们封装一个“Point类”来实现平面上的点的操作. 根据“append.cc”,完成Point类的构造方 ...
- Problem C: 平面上的点——Point类 (III)
Description 在数学上,平面直角坐标系上的点用X轴和Y轴上的两个坐标值唯一确定.现在我们封装一个“Point类”来实现平面上的点的操作. 根据“append.cc”,完成Point类的构造方 ...
- Problem B: 平面上的点——Point类 (II)
Description 在数学上,平面直角坐标系上的点用X轴和Y轴上的两个坐标值唯一确定.现在我们封装一个“Point类”来实现平面上的点的操作. 根据“append.cc”,完成Point类的构造方 ...
随机推荐
- day7_子类的拷贝构造与拷贝赋值
- 【安卓基础】ImageView与EditText联动实现隐藏与显示密码
项目中经常会有这样的需求,在密码输入框的右边有一个小图标,点击就切换显示和隐藏密码. 其实这里需求实现起来是比较容易的,主要考虑是复用问题,因为登陆.注册.修改密码界面都会有这样的情景,如果每个界面都 ...
- C#_计算目前时间到指定的周X、指定的时间X 还有多少秒
比如:当前时间到下周二 05:00:00还剩下多少秒? /// <summary> /// 计算距离下一个 周XX XX时XX分XX秒,还剩下多少秒 /// </summary> ...
- stm32WB55xx 外设资源
1.FLASH(闪存) 2.Radio System(无线系统:兼容BLE5.0与IEEE802.15.4标准,由2.4GHz射频前端.BLE和IEEE802.15.4物理层控制器组成,无线低功耗协议 ...
- ubuntu 安装nginx, 出现 Unable to locate package
今天在初始化一台新的ubuntu 服务器时,敲上了 sudo apt-get install nginx 来安装nginx, 却发现提示: Reading package lists... Done ...
- GDT与LDT
保护模式下的段寄存器 由 16位的选择器 与 64位的段描述符寄存器 构成段描述符寄存器: 存储段描述符选择器:存储段描述符的索引 PS:原先实模式下的各个段寄存器作为保护模式下的段选择器,80486 ...
- bash_profile
export ORACLE_BASE=/home/oracle/app export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1 ...
- 使用 dva 如何配置异步加载路由组件
来源:https://www.jianshu.com/p/69694013e36b----------------------------------------------------- 普通方式 ...
- [转] jquery作者John Resig编写的微模板引擎:JavaScript Micro-Templating
I've had a little utility that I've been kicking around for some time now that I've found to be quit ...
- k-近邻法(kNN)
原理: 已知一个训练样本集(有标签),计算待测试样本与所有训练样本的距离. 按距离从小到大进行排序并取前 k 个,统计 k 个中出现次数最多的分类为分类结果. 优点:精度高,对异常值不敏感,无数据输入 ...