zoukankan      html  css  js  c++  java
  • YTU 2632: B2 友元光顾

    2632: B2 友元光顾

    时间限制: 1 Sec  内存限制: 128 MB
    提交: 378  解决: 241

    题目描述

    定义一个平面上的点类Point,其中设置成员函数distance1求当前对象与另一点的距离,并设置友员函数distance2也完成相同的工作。
    请在划横线的部分填上需要的成份,使程序能正确运行,得到要求的输出结果。
    请提交begin到end部分的代码。
    //************* begin *****************
    #include<iostream>
    #include<cmath>
    #include <iomanip>
    using namespace std;
    class CPoint
    {
    private:
        double x;  // 横坐标
        double y;  // 纵坐标
    public:
        CPoint(double xx=0,double yy=0):x(xx),y(yy) {}
        double distance1(CPoint &);
        ____(1)_____ double distance2(CPoint &, CPoint &);
    };
    double CPoint::distance1(CPoint &p)
    {
        double dx,dy;
        dx=_____(2)_____;
        dy=_____(3)_____;
        return sqrt(dx*dx+dy*dy);
    }
    double distance2(CPoint &p1,CPoint &p2)
    {
        double dx,dy;
        dx=_____(4)_____;
        dy=_____(5)_____;
        return sqrt(dx*dx+dy*dy);
    }
    //************* begin *****************
    int main()
    {
        double px1, py1, px2, py2;
        cin>>px1>>py1>>px2>>py2;
        CPoint p1(px1, py1), p2(px2, py2);
        cout <<setiosflags(ios::fixed)<<setprecision(2);
        cout<<"1. "<<p1.distance1(p2)<<endl;
        cout<<"2. "<<distance2(p1,p2)<<endl;
        return 0;
    }

    输入

    四个以空格隔开的小数,表示平面中两点的横纵坐标

    输出

    两次输出两点间的距离,分别用成员函数和友元函数完成计算

    样例输入

    2.5 4.3 7.8 6.7

    样例输出

    1. 5.82
    2. 5.82

    迷失在幽谷中的鸟儿,独自飞翔在这偌大的天地间,却不知自己该飞往何方……

    #include<iostream>
    #include<cmath>
    #include <iomanip>
    using namespace std;
    class CPoint
    {
    private:
        double x;  // 横坐标
        double y;  // 纵坐标
    public:
        CPoint(double xx=0,double yy=0):x(xx),y(yy) {}
        double distance1(CPoint &p);
        friend double distance2(CPoint &p1, CPoint &p2);
    };
    double CPoint::distance1(CPoint &p)
    {
        double dx,dy;
        dx=p.x-x;
        dy=p.y-y;
        return sqrt(dx*dx+dy*dy);
    }
    double distance2(CPoint &p1,CPoint &p2)
    {
        double dx,dy;
        dx=p1.x-p2.x;
        dy=p1.y-p2.y;
        return sqrt(dx*dx+dy*dy);
    }
    int main()
    {
        double px1, py1, px2, py2;
        cin>>px1>>py1>>px2>>py2;
        CPoint p1(px1, py1), p2(px2, py2);
        cout <<setiosflags(ios::fixed)<<setprecision(2);
        cout<<"1. "<<p1.distance1(p2)<<endl;
        cout<<"2. "<<distance2(p1,p2)<<endl;
        return 0;
    }

  • 相关阅读:
    MongoDB 常用故障排查工具
    MongoDB ServerStatus返回信息
    SQL Server 2012实施与管理实战指南(笔记)——Ch6连接的建立和问题排查
    SQL Server 2012实施与管理实战指南(笔记)——Ch5启动SQL Server服务和数据库
    [20140504] ADO.NET客户端超时
    SQL Server 2012实施与管理实战指南(笔记)——Ch4数据库连接组件
    SQL Server 2012实施与管理实战指南(笔记)——Ch3Alwayson可用组
    SQL Server 2014新特性——Buffer Pool扩展
    SQL Server 2014新特性——事务持久性控制
    SQL Server 2014新特性——基数评估(白皮书阅读笔记)
  • 原文地址:https://www.cnblogs.com/im0qianqian/p/5989512.html
Copyright © 2011-2022 走看看