输入三个点的坐标,实现判断此三角形是不是直角三角形,并输出此三角形的周长。
#include
#include
//#include
using namespace std;
class CPoint
{
double x,y;
public:
CPoint(double xx,double yy){x=xx;y=yy;}
double operator- (CPoint c);
};
double CPoint::operator- (CPoint c)
{
return sqrt((x-c.x)*(x-c.x)+(y-c.y)*(y-c.y));
}
class cTriangle
{
CPoint A,B,C;
double AB,BC,AC;
public:
cTriangle(CPoint a,CPoint b,CPoint c):A(a),B(b),C(c)
{
AB=A-B;
BC=B-C;
AC=A-C;
}
void display();
bool fun();
};
bool cTriangle::fun()
{
double a=AB,b=BC,c=AC,temp;
if(a>c)
{
temp=c;
c=a;
a=temp;
}
if(b>c)
{
temp=b;
b=c;
c=temp;
}
if(b*b+a*a==c*c)
return true;
else
return false;
}
void cTriangle::display()
{
cout<<"这是一个直角三角形!"<>x1>>y1>>x2>>y2>>x3>>y3;
CPoint a(x1,y1),b(x2,y2),c(x3,y3);
cTriangle T(a,b,c);
if(T.fun())
T.display();
else
cout<<"这不是直角三角形!"<