标题 C++ 类 输入六个点判断三角型是否成立 并计算面积
**********设计如下类:
- 建⽴⼀个 Point 类,表⽰平⾯中的⼀个点;建⽴⼀个 Line 类,表⽰平⾯中
的⼀条线端,内含两个 Point 类的对象;建⽴ Triangle 类,表⽰⼀个三⾓形,内含
三个 Line 类的对象构成⼀个三⾓形。
2)设计三个类的相应的构造函数、拷贝构造函数,完成初始化和对象拷贝。
3)设计 Triangle 类的成员函数完成三条边是否能构成三⾓形的检验和三⾓形
⾯积计算**,⾯积显⽰。
#include<iostream>
#include<math.h>
#include<stdlib.h>
#include<string.h>
#include<float.h>
using namespace std;
class point;
class line;
class triangle;
//首先构造点类
class point
{
public:
double x,y;
public:
point(double a,double b)//构造函数
{
x=a;//x,y坐标
y=b;
}
};
//线类
class line
{
public:
point A,B;//两个点
double length;//线长度
public:
line(double x1,double y1,double x2,double y2):A(x1,y1),B(x2,y2)//构造函数
{
length=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));//这里是求括号里面的正平方根
cout<<length<<endl;
}
};
//三角形类
class triangle
{
public:
line a,b,c;
double mj;
public:
triangle(double x1,double y1,double x2,double y2,double x3,double y3,double x4,double y4,double x5,double y5,double x6,double y6):a(x1,y1,x2,y2),b(x3,y3, x4,y4),c(x5,y5,x6,y6)//这里是初始化表
{
}
public:
void panduan()//判断函数,检测是不是三角形
{
if(a.length+b.length>c.length&&a.length+c.length>b.length&&b.length+c.length>a.length)//
{
int p=a.length+b.length+c.length;
p/=2;
cout<<"可以构成三角形"<<endl;
cout<<sqrt(p*(p-a.length)*(p-b.length)*(p-c.length));//海伦公式
}
}
};
int main()
{
cout<<"请输入第一条线的四个坐标"<<endl;
double a1,a2,a3,a4;
cin>>a1>>a2>>a3>>a4;
cout<<"请输入第2条线的四个坐标"<<endl;
double b1,b2,b3,b4;
cin>>b1>>b2>>b3>>b4;
cout<<"请输入第3条线的四个坐标"<<endl;
double c1,c2,c3,c4;
cin>>c1>>c2>>c3>>c4;
triangle D(a1,a2,a3,a4,b1,b2,b3,b4,c1,c2,c3,c4);
D.panduan();
return 0;
}