?? pku2546.cpp
字號:
#include "stdio.h"
#include "math.h"
#define PI 3.1415926536
int main()
{
double x1,y1,r1,x2,y2,r2,r;
double p,ang1,ang2,d1,d2,D1,D2,area;
scanf("%lf%lf%lf%lf%lf%lf",&x1,&y1,&r1,&x2,&y2,&r2);
D1=(x1-x2)*(x1-x2)+(y1-y2)*(y1-y2);
if((r1+r2)*(r1+r2)<=D1) printf("0.000\n");
else if(D1<=fabs(r1-r2))
{
D2=(r1>r2)?r2:r1;
printf("%.3lf",PI*D2*D2);
}
else
{
D1=sqrt(D1);
D2=(r1*r1-r2*r2)/D1;
d1=(D1+D2)/2;
d2=(D1-D2)/2;
p=sqrt(r1*r1-d1*d1);
ang1=acos(d1/r1);
ang2=acos(d2/r2);
area=r1*r1*ang1+r2*r2*ang2-p*(d1+d2);
area=(int)(area*1000+0.5)/1000.0;
printf("%.3lf\n",area);
}
// getch();
return 0;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -