#include //根据点的定义,写出线段和三角形的定义,并通过主程序进行验证 //mypoint.h class myPoint { public: myPoint(); myPoint(double x, double y); double getX(); double getY(); private: double mX,mY; }; #include // 用于cout, cin, endl #include // 用于pow, sqrt using namespace std; // Line类的声明 class Line { private: myPoint p1, p2; public: Line(myPoint a, myPoint b) : p1(a), p2(b) {} double GetDistance() { return sqrt(pow(p2.getX() - p1.getX(), 2) + pow(p2.getY() - p1.getY(), 2)); } }; // Triangle类的声明 class Triangle { private: myPoint p1, p2, p3; Line l1, l2, l3; public: Triangle(myPoint a, myPoint b, myPoint c) : p1(a), p2(b), p3(c), l1(a, b), l2(a, c), l3(b, c) {} double getGirth() { return l1.GetDistance() + l2.GetDistance() + l3.GetDistance(); } double getArea() { double s = getGirth() / 2; return sqrt(s * (s - l1.GetDistance()) * (s - l2.GetDistance()) * (s - l3.GetDistance())); } }; // myPoint类的实现 myPoint::myPoint() : mX(0), mY(0) {} myPoint::myPoint(double x, double y) : mX(x), mY(y) {} double myPoint::getX() { return mX; } double myPoint::getY() { return mY; } int main() { double x1, x2, x3, y1, y2, y3; cout << "请输入点1的x的值:"; cin >> x1; cout << "请输入点1的y的值:"; cin >> y1; cout << "请输入点2的x的值:"; cin >> x2; cout << "请输入点2的y的值:"; cin >> y2; cout << "请输入点3的x的值:"; cin >> x3; cout << "请输入点3的y的值:"; cin >> y3; cout << "点1的坐标为:(" << x1 << "," << y1 << ")" << endl; cout << "点2的坐标为:(" << x2 << "," << y2 << ")" << endl; cout << "点3的坐标为:(" << x3 << "," << y3 << ")" << endl; myPoint p1(x1, y1), p2(x2, y2), p3(x3, y3); Line line1(p1,p2),line2(p1,p3),line3(p2,p3); cout<<"边长1的长度:"<