【程序设计】Point类
---------------------------------------------------------题目:定义一个描述二维坐标系中点对象的类Point,它具有下述成员函数:
(1)double r(); //计算极坐标的极半径
(2)double theta(); //计算极坐标的极角
(3)double distance(Point& p); //计算与点p的距离
样例:
极半径为7.07107,极角为0.785398
AB两点间距离为5.65685
请按任意键继续. . .
代码如下:
#include <iostream>
#include <cmath>
using namespace std;
/**********Program**********/
class Point{
private:
double X,Y;
public:
Point()
{
X=0;
Y=0;
}
//默认构造函数
Point(int x,int y)
{
X=x;
Y=y;
}
//构造函数
double r()
{
double r;
r=sqrt(X*X+Y*Y);
return r;
}
double theta()
{
double angle;
angle=atan(X/Y);
return angle;
}
double distance(Point& p)
{
double distance;
distance=sqrt((X-p.X)*(X-p.X)+(Y-p.Y)*(Y-p.Y));
return distance;
}
};
/********** End **********/
void main()
{
Point A(5,5),B(1,1);
cout<<"极半径为"<<A.r()<<",极角为"<<A.theta()<<endl;
cout<<"AB两点间距离为"<<A.distance(B)<<endl;
}