设计一个point 类.其中:数据成员: 点的坐标x,y;成员函数:带有参的构造函数(不带默认值),其他成员函数不做要求。 定义一个line类 要求: 数据成员: 线上的两个点point1,point2(用定义好的point) 成员函数: 定义一条直线 计算线段的长度 输入两个点的坐标输出线段的长度(保留小数点后两位数)
时间: 2023-05-28 20:02:14 浏览: 112
C++程序y课程设计 动态存储管理和程序调试
4星 · 用户满意度95%
代码实现如下:
```
#include <iostream>
#include <cmath>
using namespace std;
class Point {
private:
double x;
double y;
public:
Point(double _x, double _y) : x(_x), y(_y) {}
double getX() { return x; }
double getY() { return y; }
};
class Line {
private:
Point point1;
Point point2;
public:
Line(Point p1, Point p2) : point1(p1), point2(p2) {}
double getLength() {
double dx = point1.getX() - point2.getX();
double dy = point1.getY() - point2.getY();
return round(sqrt(dx * dx + dy * dy) * 100) / 100; // 保留小数点后两位
}
};
int main() {
double x1, y1, x2, y2;
cout << "请输入点1的坐标: ";
cin >> x1 >> y1;
cout << "请输入点2的坐标: ";
cin >> x2 >> y2;
Point p1(x1, y1);
Point p2(x2, y2);
Line line(p1, p2);
cout << "线段长度为: " << line.getLength() << endl;
return 0;
}
```
测试代码:
```
请输入点1的坐标: 1 1
请输入点2的坐标: 4 5
线段长度为: 5
```
阅读全文