定义一个描述二维坐标系中点对象的类Point ,它具有下列成员函数:

来源:百度知道 编辑:UC知道 时间:2024/05/24 16:51:37
(1)double r();//计算极坐标的极半径
(2)double theta();//计算极坐标的极角
(3) double distance (const Point & P);//计算与点P的距离
(4) Point relative (const Point & P);//计算相对于P的相对坐标
(5) bool is_above_left(const Point & P);//判断是否在点P 的左上方
帮忙写下,顺便告诉我后三个是什么意思,怎么涉及到其他点了?

class Point {
public:
double xval, yval;
Point(double x = 0.0, double y = 0.0) {
xval = x; yval = y;
}

double x() { return xval; }
double y() { return yval; }

double distance (const Point & P){
double xd = xval - P.xval;
double yd = yval - P.yval;
return sqrt(xd*xd + yd*yd);
}

Point relative (const Point & P){
Point r;
r.xval = xval - P.xval;
r.yval = yval - P.yval;
return r;
}

bool is_above_left(const Point & P){
double xd = xval - P.xval;
double yd = yval - P.yval;
if (xd < 0.0 && yd > 0.0) {return 1==1 ;} else { return 1== 0;};
}

double r(){
return sqrt(xval*xval + yval*yval);
}

double theta(){
double rr;
rr = r();
return asin(yval / rr);
}

void print( ){
printf("%f %f\n",xval,yval);
}
};
-----------------------------------
后三个
(3)