7-1 求两点之间距离 (20分)
定义一个Point类,有两个数据成员:x和y, 分别代表x坐标和y坐标,并有若干成员函数。 定义一个函数Distance(), 用于求两点之间的距离。
输入格式:
输入有两行: 第一行是第一个点的x坐标和y坐标; 第二行是第二个点的x坐标和y坐标。
输出格式:
输出两个点之间的距离,保留两位小数。
输入样例:
0 9 3 -4
输出样例:
13.34
代码实现:
第一种:
#include<iostream>
#include<cmath>
#include<iomanip>
using namespace std;
class point{
double x,y;
public:
void set(double a,double b)
{
x=a;
y=b;
}
friend double Distance(point ob1,point ob2)//这个是定义为全局函数,让该函数可以访问该类的私有成员变量
{
return sqrt((ob1.x-ob2.x)*(ob1.x-ob2.x)+(ob1.y-ob2.y)*(ob1.y-ob2.y));
}
};
int main(void)
{
double a1,a2,b1,b2;
cin>>a1>>a2>>b1>>b2;
point ob1,ob2;
ob1.set(a1,a2);
ob2.set(b1,b2);
cout<<setiosflags(ios::fixed);
cout<<setprecision(2)<<Distance(ob1,ob