#include<iomanip>
#include<iostream>
#include<math.h>
using namespace std;
class Point
{public:
double x,y,x1,y1,x2,y2;
double dist;
public:
friend istream & operator>>(istream & in, Point & p);
friend ostream & operator<<(ostream & out,Point & p);
friend Point operator-( Point & , Point & );
friend Point operator*( Point & , Point & );
Ponit(double x1=0, double y1=0, double x2=0, double y2=0 )
{
double dist;
dist=sqrt((x2-x1)*(x2-x1)-(y2-y1)*(y2-y1));
return dist;
}
};
Point operator-(Point & p1, Point &p2){
Point p;
p.x = p2.x2 -p1.x1;
p.y = p2.y2 -p1.y1;
return p;
}
Point operator*(Point & p1, Point &p2){
Point p;
p.dist=sqrt((p2.x2-p1.x1)*(p2.x2-p1.x1)-(p2.y2-p1.y1)*(p2.y2-p1.y1));
return p;
}
istream& operator>>(istream &in,Point &p)
{
in>>p.x1>>p.y1>>p.x2>>p.y2;
return in;
}
ostream& operator<<(istream &out,Point &p)
{
out<<p.dist<<endl;
return out;
}
int main()
{
Point p1,p2;
cin>>p1;
cin>>p2;
cout<<"这两点间的距离为:"<<distance<<endl;
return 0;
}
dist=sqrt((x2-x1)*(x2-x1)-(y2-y1)*(y2-y1));距离公式是这么写的吗?不是x*x+y*y,中间是加么
Point operator*(Point & p1, Point &p2){
Point p;
p.dist=sqrt((p2.x2-p1.x1)*(p2.x2-p1.x1)-(p2.y2-p1.y1)*(p2.y2-p1.y1));
return p;
}
这个,sqrt((p2.x2-p1.x1)*(p2.x2-p1.x1)-(p2.y2-p1.y1)*(p2.y2-p1.y1));写错了,中间不是-(减号)应该是+(加号)