用c++计算2维平面上的两个点之间的距离,保留两位小数
时间: 2024-10-10 17:15:09 浏览: 35
使用GPS经纬度定位附近地点(某一点范围内查询)
在C++中,计算二维平面上两点之间的欧几里得距离可以使用下面的公式:
对于两个点A(x1, y1) 和 B(x2, y2),它们之间的距离d计算如下:
\[ d = \sqrt{(x2 - x1)^2 + (y2 - y1)^2} \]
这是一个标准的数学运算,需要引入cmath库来进行平方根计算。以下是完整的代码示例:
```cpp
#include <iostream>
#include <cmath> // 引入cmath库,用于sqrt函数
// 定义一个结构体表示二维坐标
struct Point {
double x;
double y;
};
// 计算两个Point类型的点之间的距离
double distance(const Point& p1, const Point& p2) {
double dx = p2.x - p1.x;
double dy = p2.y - p1.y;
return std::sqrt(dx * dx + dy * dy); // 返回距离结果
}
int main() {
Point A(0, 0);
Point B(3.14, 2.71); // 示例的两个点
double dist = distance(A, B);
// 保留两位小数并打印结果
std::cout << "Distance between points A and B is: " << std::fixed << std::setprecision(2) << dist << std::endl;
return 0;
}
```
在这个例子中,我们首先定义了一个`Point`结构体,并在`distance`函数中计算了两点之间的距离。最后,使用`std::fixed`设置浮点数显示固定精度,`std::setprecision(2)`设定小数点后的位数。
阅读全文