08-静态成员与友元
题目描述
请完成如下要求:
1.实现Point类;
2.为Point类增加一个友元函数double Distance(Point &a, Point &b),用于计算两点之间的距离。直接访问Point对象的私有数据进行计算。
3.编写main函数,输入两点坐标值,计算两点之间的距离。
输入
第1行:输入需计算距离的点对的数目
第2行开始,每行依次输入两个点的x和y坐标
输出
每行依次输出一组点对之间的距离(结果直接取整数部分,不四舍五入 )
输入样例
2
1 0 2 1
2 3 2 4
1
1
#include <iostream>
#include <cmath>
using namespace std;
class point
{
double x,y;
public:
point(double xx,double yy):x(xx),y(yy){}
friend int distance(point &a,point &b);
};
int distance(point &a,point &b)
{
double dis=sqrt((b.x-a.x)*(b.x-a.x)+(b.y-a.y)*(b.y-a.y));
return (int)dis;
}
int main()
{
int t;
cin>>t;
while(t--)
{
int x,y,xx,yy;
cin>>x>>y>>xx>>yy;
point a(x,y),b(xx,yy);
cout<<distance(a,b)<<endl;
}
return 0;
}