您的位置:首页 > 其它

分支-02. 三角形判断(15)

2015-02-09 16:24 113 查看
判断三角形采用两边和大于第三边都满足即可

注意海伦公式的使用:

假设有一个三角形,边长分别为a、b、c,三角形的面积S可由以下公式求得:

S=√[p(p-a)(p-b)(p-c)]

而公式里的p为半周长:

p=(a+b+c)/2

#include "stdio.h"
#include "math.h"
int main(){
double x1,x2,x3,y1,y2,y3;
double p,perimeter,area;
double s1,s2,s3;
scanf("%lf%lf%lf%lf%lf%lf",&x1,&y1,&x2,&y2,&x3,&y3);
s1 = sqrt((x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2));
s2 = sqrt((x3 - x2) * (x3 - x2) + (y3 - y2) * (y3 - y2));
s3 = sqrt((x1 - x3) * (x1 - x3) + (y1 - y3) * (y1 - y3));
if (s1 + s2 > s3 && s3 + s2 > s1 && s1 + s3 > s2) {
perimeter = s1 + s2 + s3;
p = 0.5 * perimeter;
area = sqrt(p * (p - s1) * (p - s2) * (p - s3));
printf("L = %.2lf, A = %.2lf\n",perimeter,area);
}
else
printf("Impossible\n");
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: