#include<iostream> #include <math.h> #include <iomanip> using namespace std; class Point { private :int x,y; public : Point(); Point(int a,int b); double Distance(Point &a,Point &b); }; Point::Point(int a,int b){ x=a;y=b; }; double Point :: Distance(Point &p1,Point &p2){ return sqrt(pow((p1.x-p2.x),2)+pow((p1.y-p2.y),2)); } int main(){ double dis; int a,b,c,d; cin>>a>>b; cin>>c>>d; Point p1(a,b); Point p2(c,d); cout<<fixed<<setprecision(2)<<p1.Distance(p1,p2)<<endl; }实验报告
时间: 2023-08-21 21:11:54 浏览: 114
本实验是关于计算两点之间的距离,使用了面向对象的编程思想,代码如下:
```c++
#include<iostream>
#include <math.h>
#include <iomanip>
using namespace std;
class Point {
private :
int x,y;
public :
Point();
Point(int a,int b);
double Distance(Point &a,Point &b);
};
Point::Point(int a,int b){
x=a;
y=b;
}
double Point :: Distance(Point &p1,Point &p2){
return sqrt(pow((p1.x-p2.x),2)+pow((p1.y-p2.y),2));
}
int main(){
double dis;
int a,b,c,d;
cin>>a>>b;
cin>>c>>d;
Point p1(a,b);
Point p2(c,d);
cout<<fixed<<setprecision(2)<<p1.Distance(p1,p2)<<endl;
}
```
这个程序定义了一个 `Point` 类,其中包含了两个私有成员变量 `x` 和 `y`,表示点的坐标。类中还定义了一个构造函数和一个公有成员函数 `Distance`,用于计算两点之间的距离。
在 `main` 函数中,首先从标准输入中读取两个点的坐标,并创建两个 `Point` 对象 `p1` 和 `p2`。然后调用 `p1.Distance(p1, p2)` 计算两点之间的距离,并输出结果。
值得注意的是,在 `Distance` 函数中,参数是引用类型 `&`,这样可以避免传递大量数据副本,提高程序的运行效率。另外,使用了 `<math.h>` 头文件中的 `sqrt` 和 `pow` 函数来计算平方和开方,使用了 `<iomanip>` 头文件中的 `fixed` 和 `setprecision` 函数来指定输出结果的精度。
阅读全文