17:计算三角形面积

129 阅读1分钟

原题链接

总时间限制: 1000ms 内存限制: 65536kB

描述

平面上有一个三角形,它的三个顶点坐标分别为(x1, y1), (x2, y2), (x3, y3),那么请问这个三角形的面积是多少。

输入

输入仅一行,包括6个单精度浮点数,分别对应x1, y1, x2, y2, x3, y3。

输出

输出也是一行,输出三角形的面积,精确到小数点后两位。

样例输入

0 0 4 0 0 3

样例输出

6.00

源码

#include <stdio.h>
#include<math.h>
int main()
{
    float x1,x2,x3,y1,y2,y3;
    scanf("%f %f %f %f %f %f",&x1,&y1,&x2,&y2,&x3,&y3);
    float a,b,c;
    a=sqrt(pow(x1-x2,2)+pow(y1-y2,2));
    b=sqrt(pow(x1-x3,2)+pow(y1-y3,2));
    c=sqrt(pow(x2-x3,2)+pow(y2-y3,2));
    float p=1.0/2*(a+b+c);
    printf("%.2f",sqrt(p*(p-a)*(p-b)*(p-c)));
}

以上代码仅供参考