求三角形面积
程序员文章站
2022-05-08 14:33:47
...
给定三角形三个顶点的坐标,计算三角形的面积。
Input
有多组数据。每组数据由6个双精度数组成,分别表示三角形三个顶点的坐标。
Output
三角形的面积。如果三点在一条直线上,则输出“not a triangle”。
Sample Input
10 20 30 40 50 60
3874 487 34587 45687 234 45
Sample Output
not a triangle!
area=75476427.00
#include<stdio.h>
#include<math.h>
int main(){
double x1,y1,x2,y2,x3,y3,a,b,c,p,s;
while(~scanf("%lf %lf %lf %lf %lf %lf",&x1,&y1,&x2,&y2,&x3,&y3)){
a=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
b=sqrt((x1-x3)*(x1-x3)+(y1-y3)*(y1-y3));
c=sqrt((x3-x2)*(x3-x2)+(y3-y2)*(y3-y2));
p=(a+b+c)/2;
s=sqrt(p*(p-a)*(p-b)*(p-c));
if(s==0){
printf("not a triangle!\n");
}
else printf("area=%.2lf\n",s);
}
return 0;
}
上一篇: 怎样在人海当中辨别出香港高帅富们。
下一篇: 【C语言基础08】数组(含经典代码解析)