point_line_友元类

描述
用友元类解决下面的问题: 设计一个point 类.其中:数据成员: 点的坐标x,y;成员函数:带有参的构造函数(不带默认值),其他成员函数不做要求。 定义一个line类 要求:数据成员:线上的两个点point1,point2(用定义好的point)成员函数: 定义一条直线 计算线段的长度

输入
两个点的坐标
输出
线段的长度(保留小数点后两位数)
样例输入
0 0 0 2
样例输出
2.00

#include<iostream>
#include<cmath>
#include<iomanip>
using namespace std;
class Point
{
private:
    int x,y;
public:
    Point()
    {
        cin>>x>>y;
    }
    friend class line;
};
class line
{
private:
    Point P1,P2;
public:
    line(Point p1,Point p2):P1(p1),P2(p2){}
    double dist()
    {
        return sqrt( (P1.x-P2.x)*(P1.x-P2.x) +  (P1.y-P2.y)*(P1.y-P2.y) );
    }
};
int main()
{
    Point p1,p2;
    line d(p1,p2);
    cout<<setiosflags(ios::fixed)<<setprecision(2)<<d.dist()<<endl;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值