第七周项目3-成员函数、友元函数和一般函数区别

本文详细解读了一个用于计算两点间欧氏距离的C++类实现,包括类的构造、成员函数及核心计算方法。通过实例代码演示,旨在帮助读者理解距离计算的基本算法和其实现细节。
/*
*Corpyright (c)2013,烟台大学计算机学院
*All right reseved.
*作者:z张梦佳
*完成日期:2014年4月7日
*版本号:v1.0
*输入描述:
*问题描述:复制类!
*程序输出:
*问题分析:
*算法设计:
*/
#include <iostream>
#include <cmath>
using namespace std;
class CPoint
{
private:
    double x;  // 横坐标
    double y;  // 纵坐标
 public:
    CPoint(double xx=0,double yy=0):x(xx),y(yy){}
    void input();
    friend double getput(CPoint &p,CPoint &s);
    double num(CPoint &p);
    double get_x();
    double get_y();
};
double CPoint::get_x()
{
    return x;
}
double CPoint::get_y()
{
    return y;
}
void CPoint::input()
{
        double a,b;
        cout<<"请输入一个点的坐标:"<<endl;
        cin>>a>>b;
        x=a;
        y=b;
}
double CPoint::num(CPoint &p)
{
    double s;
    s=sqrt((p.x-x)*(p.x-x)+(p.y-y)*(p.y-y));
    return s;
}
double getput(CPoint &p,CPoint &s)
{

    return sqrt((p.x-s.x)*(p.x-s.y)+(p.y-s.y)*(p.y-s.y));
}
double mmmm(double ,double ,double ,double);
int main()
{
    CPoint a,b;
    a.input();
    b.input();
    cout<<"两点的距离为:"<<a.num(b)<<endl;
    cout<<"两点的距离为:"<<getput(a,b)<<endl;
    cout<<"两点的距离为:"<<mmmm(a.get_x(),a.get_y(),b.get_x(),b.get_y())<<endl;

    return 0;
}
double mmmm(double a,double b,double c,double d)
{
    double s;
     s=sqrt((a-c)*(a-c)+(b-d)*(b-d));
    return s;
}




感悟

好难,坐了好久。也做了好久//

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值