【问题描述】创建一个Point类,表示二维平面上的一个点,包含私有数据成员x坐标和y坐标。请参考已有代码及注释,补充代码,完成以下任务。【注意系统库中存在POINT类,所以类名请注意区分】
(1)成员函数:setPoint函数,从键盘输入,设置点的x坐标和y坐标
(2)成员函数:getX函数,getY函数,分别获得该点的x坐标和y坐标
(3)成员函数:myDistance函数,可调用sqrt()函数,计算并输出两个点之间的距离【库函数中存在distance函数,所以改名,避免冲突】
【输入形式】输入包括两行,每行包含两个整数,分别表示点的横坐标和纵坐标
【输出形式】输出包括一行,只有一个实数,即两个点之间的距离,保留三位小数。
【样例输入】
0 0
1 1
【样例输出】
1.414
【样例说明】
[0,0]和[1,1]之间的距离为1.414。
【评测用例规模】
每个评测样例中,两个点的横、纵坐标范围都是[0,80]。
by2020届信息院通信 毕
下面就直接上代码
#include <iostream>
#include <iomanip>
#include <cmath> //声明sqrt函数
using namespace std;
class Point //完成Point类的声明,包含数据成员和成员函数
{ private:
int x;
int y;
// 成员函数原型声明
public:
void setPoint();
int getX( ) const;
int getY( ) const;
};
void Point::setPoint( ) //从键盘输入Point的坐标
{
float m,n;
cin>>m>>n;
x=m;
y=n;
}
int Point::getX( ) const //获得X坐标
{
return x;
}
int Point ::getY( ) const //获得Y坐标
{
return y;
}
void myDistance( int xVal,int yVal) //计算两个点的距离,并输出
{
float u=sqrt(xVal*xVal+yVal*yVal);
cout<<fixed<<setprecision(3)<<u;
}
int main()
{
Point A,B; //定义两个Point对象,A和B;
//从键盘输入A和B的坐标
float s,d;
A.setPoint();
B.setPoint();
s = A.getX ()- B.getX();
d = A.getY() - B.getY();
//输出A和B之间的距离
myDistance(s,d);
return 0;
}