YTU 2632: B2 友元光顾
2632: B2 友元光顾
时间限制: 1 Sec
内存限制: 128 MB
提交: 378
解决: 241
题目描述
定义一个平面上的点类Point,其中设置成员函数distance1求当前对象与另一点的距离,并设置友员函数distance2也完成相同的工作。
请在划横线的部分填上需要的成份,使程序能正确运行,得到要求的输出结果。
请提交begin到end部分的代码。
//************* begin ***************** #include #include #include using namespace std; class CPoint { private: double x; // 横坐标 double y; // 纵坐标 public: CPoint(double xx=0,double yy=0):x(xx),y(yy) {} double distance1(CPoint &); ____(1)_____ double distance2(CPoint &, CPoint &); }; double CPoint::distance1(CPoint &p) { double dx,dy; dx=_____(2)_____; dy=_____(3)_____; return sqrt(dx*dx+dy*dy); } double distance2(CPoint &p1,CPoint &p2) { double dx,dy; dx=_____(4)_____; dy=_____(5)_____; return sqrt(dx*dx+dy*dy); } //************* begin ***************** int main() { double px1, py1, px2, py2; cin>>px1>>py1>>px2>>py2; CPoint p1(px1, py1), p2(px2, py2); cout <输入
四个以空格隔开的小数,表示平面中两点的横纵坐标
输出
两次输出两点间的距离,分别用成员函数和友元函数完成计算
样例输入
2.5 4.3 7.8 6.7
样例输出
1. 5.822. 5.82
迷失在幽谷中的鸟儿,独自飞翔在这偌大的天地间,却不知自己该飞往何方……
#include#include#include using namespace std;class CPoint{private: double x; // 横坐标 double y; // 纵坐标public: CPoint(double xx=0,double yy=0):x(xx),y(yy) {} double distance1(CPoint &p); friend double distance2(CPoint &p1, CPoint &p2);};double CPoint::distance1(CPoint &p){ double dx,dy; dx=p.x-x; dy=p.y-y; return sqrt(dx*dx+dy*dy);}double distance2(CPoint &p1,CPoint &p2){ double dx,dy; dx=p1.x-p2.x; dy=p1.y-p2.y; return sqrt(dx*dx+dy*dy);}int main(){ double px1, py1, px2, py2; cin>>px1>>py1>>px2>>py2; CPoint p1(px1, py1), p2(px2, py2); cout <
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
暂时没有评论,来抢沙发吧~