计算三角形面积
描述
平面上有一个三角形,它的三个顶点坐标分别为(x1, y1), (x2, y2), (x3, y3),那么请问这个三角形的面积是多少,精确到小数点后两位。
输入
输入仅一行,包括6个浮点数,分别对应x1, y1, x2, y2, x3, y3。
输出
输出也是一行,输出三角形的面积,精确到小数点后两位。
输入样例 1
0 0 4 0 0 3
输出样例 1
6.00
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
int main(){
double x1,y1,x2,y2,x3,y3,a,b,c,a1,b2,c3,a4,b5,c6;
double p,s;
cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3;
a = fabs(x1 - x2);
b = fabs(y1 - y2);
c = sqrt(a * a + b * b);
a1 = fabs(x2 - x3);
b2 = fabs(y2 - y3);
c3 = sqrt(a1 * a1 + b2 * b2);
a4 = fabs(x1 - x3);
b5 = fabs(y1 - y3);
c6 = sqrt(a4 * a4 + b5 * b5);
p = (c + c3 + c6) / 2;
s = sqrt(p * (p - c) * (p - c3) * (p - c6));
cout << fixed << setprecision(2) << s;
return 0;
}