mirror of
https://github.com/tiennm99/KTLT.git
synced 2026-06-18 07:31:58 +00:00
135 lines
3.2 KiB
C++
135 lines
3.2 KiB
C++
#include <iostream>
|
|
#include <cmath>
|
|
#define EPSILON 1.0E-13
|
|
using namespace std;
|
|
|
|
int main()
|
|
{
|
|
double a, b, c;
|
|
enum tam_giac
|
|
{
|
|
TAM_GIAC_THUONG,
|
|
TAM_GIAC_VUONG,
|
|
TAM_GIAC_CAN,
|
|
TAM_GIAC_DEU,
|
|
TAM_GIAC_VUONG_CAN
|
|
};
|
|
char* loai_tam_giac[] =
|
|
{
|
|
"tam giac thuong.",
|
|
"tam giac vuong.",
|
|
"tam giac can.",
|
|
"tam giac deu.",
|
|
"tam giac vuong can."
|
|
};
|
|
tam_giac tg;
|
|
cout << "Nhap do dai ba canh cua tam giac: ";
|
|
cin >> a >> b >> c;
|
|
if(
|
|
((a + b - c) > EPSILON) &&
|
|
((b + c - a) > EPSILON) &&
|
|
((c + a - b) > EPSILON)
|
|
)
|
|
{
|
|
if (fabs(a - b) <= EPSILON)
|
|
{
|
|
if (fabs(a - c) <= EPSILON)
|
|
{
|
|
tg=TAM_GIAC_DEU;
|
|
}
|
|
else
|
|
{
|
|
if (fabs(a*a + b*b - c*c) <= EPSILON)
|
|
{
|
|
tg=TAM_GIAC_VUONG_CAN;
|
|
}
|
|
else
|
|
{
|
|
tg=TAM_GIAC_CAN;
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if (fabs(a*a + b*b - c*c) <= EPSILON)
|
|
{
|
|
tg=TAM_GIAC_VUONG;
|
|
}
|
|
else
|
|
{
|
|
tg=TAM_GIAC_THUONG;
|
|
}
|
|
}
|
|
if (tg==TAM_GIAC_THUONG)
|
|
{
|
|
if (fabs(b - c) <= EPSILON)
|
|
{
|
|
if (fabs(b - a) <= EPSILON)
|
|
{
|
|
tg=TAM_GIAC_DEU;
|
|
}
|
|
else
|
|
{
|
|
if (fabs(b*b + c*c - a*a) <= EPSILON)
|
|
{
|
|
tg=TAM_GIAC_VUONG_CAN;
|
|
}
|
|
else
|
|
{
|
|
tg=TAM_GIAC_CAN;
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if (fabs(b*b + c*c - a*a) <= EPSILON)
|
|
{
|
|
tg=TAM_GIAC_VUONG;
|
|
}
|
|
else
|
|
{
|
|
tg=TAM_GIAC_THUONG;
|
|
}
|
|
}
|
|
}
|
|
if (tg==TAM_GIAC_THUONG)
|
|
{
|
|
if (fabs(c - a <= EPSILON))
|
|
{
|
|
if (fabs(c - b) <= EPSILON)
|
|
{
|
|
tg=TAM_GIAC_DEU;
|
|
}
|
|
else
|
|
{
|
|
if (fabs(c*c + a*a - b*b) <= EPSILON)
|
|
{
|
|
tg=TAM_GIAC_VUONG_CAN;
|
|
}
|
|
else
|
|
{
|
|
tg=TAM_GIAC_CAN;
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if (fabs(c*c + a*a - b*b) <= EPSILON)
|
|
{
|
|
tg=TAM_GIAC_VUONG;
|
|
}
|
|
else
|
|
{
|
|
tg=TAM_GIAC_THUONG;
|
|
}
|
|
}
|
|
}
|
|
cout << "Tam giac da cho la " << loai_tam_giac[tg] << endl;
|
|
}
|
|
else
|
|
{
|
|
cout << "Do dai ba canh vua nhap khong phai la tam giac.";
|
|
}
|
|
return 0;
|
|
}
|