您的位置:首页 > 其它

poj解题报告——2242

2014-11-12 15:27 183 查看
这题就是一道数学题,已知不在一直线上的三点坐标,求这三点所作出的外接圆周长,利用海伦公式以及r=a*b*c/(4*s)即可,或者用余弦定理也可以

代码如下

#include<stdio.h>

#include<math.h>

#define pi 3.141592653589793

void main()

{

double C,r,x1,y1,x2,y2,x3,y3,a,b,c,s,p;

while(scanf("%lf%lf%lf%lf%lf%lf",&x1,&y1,&x2,&y2,&x3,&y3)!=EOF)

{

a=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));

b=sqrt((x1-x3)*(x1-x3)+(y1-y3)*(y1-y3));

c=sqrt((x2-x3)*(x2-x3)+(y2-y3)*(y2-y3));

p=(a+b+c)*0.5;

s=sqrt(p*(p-a)*(p-b)*(p-c));

r=a*b*c*0.25/s;

C=2.0*pi*r;

printf("%.2lf\n",C);

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: