#include <cstdio> #include <cmath> #include <iostream> using namespace std; const double pi=atan(1)*4; int main(){ double x1,y1,x2,y2,r; while(cin>>x1>>y1>>x2>>y2>>r){ double dis=sqrt(pow(x1-x2,2)+pow(y1-y2,2)); if(dis==2*r) cout<<"相切"<<endl; else if(dis>2*r) cout<<"相离"<<endl; else if(dis==0) cout<<"重合"<<endl; else if(dis<2*r){ cout<<"相交"; double b=dis/2; double c=r; double angle=acos(b/c)*2; double sanjiao=1.0/2*r*r*sin(angle); double shan=angle/(2*pi)*pi*r*r; double s=shan-sanjiao; printf(" %.2f\n",s*2); } } } |
Double click to view unformatted code.