计算两点间距离(友元成员函数)

来源:互联网 发布:公司安装丁丁软件 编辑:程序博客网 时间:2024/06/05 23:55

当前编程题: 实验2-类和对象的进一步讨论---计算两点间距离(友元成员函数)

5.

【问题描述】在平面直角坐标系中,点类Point包括两个数据成员:x(横坐标),y(纵坐标);若干成员函数,要求使用友元函数计算两点间距离。设计main()函数,以点(0,0)和(3,4)作为测试数据,测试程序。

【输入形式】本题没有输入,初始化工作由构造函数完成。
【输出形式】输出占一行,为给定的两点间距离。
【样例输入】无
【样例输出】5.00
【样例说明】两点(0,0)和(3,4)之间的距离为5.00。
【评分标准】本题共20分,1个测试点。

【编程说明】本题必须使用类,在main()函数中按照给定的数值创建对象,通过友元函数完成所需计算。非基于对象的程序且未按照要求做不得分。



#include<iostream>
#include<iomanip>
#include<math.h>
using namespace std;


class kind2;
class kind1
{
public:
kind1(int xx,int yy):x(xx),y(yy){}
float handle(kind2 &);
private:
int x,y;
};




class kind2
{
public:
kind2(int xx,int yy):x(xx),y(yy){}
friend float kind1::handle(kind2 &);
private:
int x,y;
};


float kind1::handle(kind2 &two)
{
return(sqrt((two.x-x)*(two.x-x)+(two.y-y)*(two.y-y)));
}




int main()
{
kind1 one(0,0);
kind2 two(3,4);
cout<<setiosflags(ios::fixed)<<setprecision(2);
cout<<one.handle(two)<<endl;;
return 0;
}

0 0
原创粉丝点击