c++ 需要一系列点的X的平均值和Y的平均值,如何写比较简洁
时间: 2024-09-25 21:11:28 浏览: 44
在C++中,如果你想计算一系列点的X坐标和Y坐标的平均值,你可以创建一个结构体或者类来存储点的信息,然后使用数组或者向量来存储这些点。这里是一个简单的示例:
```cpp
#include <iostream>
#include <vector>
// 定义一个点结构体
struct Point {
double x;
double y;
};
// 计算点集合的平均值函数
double calculateAverage(const std::vector<Point>& points) {
double sumX = 0, sumY = 0;
for (const auto& point : points) {
sumX += point.x;
sumY += point.y;
}
return {sumX / points.size(), sumY / points.size()};
}
int main() {
// 创建点的向量,并填充数据
std::vector<Point> points = { {1.0, 2.0}, {3.0, 4.0}, {5.0, 6.0} };
// 调用函数计算平均值
const auto averages = calculateAverage(points);
// 输出结果
std::cout << "Average X: " << averages.first << "\n";
std::cout << "Average Y: " << averages.second << "\n";
return 0;
}
```
在这个例子中,`calculateAverage`函数接受一个`Point`类型的向量作为输入,遍历每个点并累加X和Y坐标,最后返回两个平均值。这个代码简洁明了,易于理解和维护。
阅读全文