#include<iostream.h>
class CCircle;
struct CPoint
{
unsigned x;
unsigned y;
bool IsInCircle(CCircle*Circle);
};
class CCircle
{
public;
unsigned Radius;
CPoint Center;
};
bool CPiont::IsInCircle(CCircle*Circle)//这段代码的定义不是很理解请高手详细解释下
{ //下面这些代码都是什么意思
return (((x-Circle->Center.x)*(x-Circle->Center.x)
+(y-Circle->Center.y)*(y-Circle->Center.y)
)
<=Circle->Radius*Circle->Radius
);
};
void main()
{
CPoint Center;
CPoint Point;
CCircle Circle;
Center x=0
CPiont Point;
CCircle Circle;
Center.x=0;
Center.y=0;
Point.x=2;
Point.y=3;
Circle.Radius=3;
Circle.Center=Center;
if(Point.IsInCircle(&Circle))
cout<<"The point is in the circle."<<endl;
else
cout<<"The point is not in the circle."<<endl;
}
+(y-Circle->Center.y)*(y-Circle->Center.y)
点到圆心的距离的平方
Circle->Radius*Circle->Radius
半径的平方
(((x-Circle->Center.x)*(x-Circle->Center.x)
+(y-Circle->Center.y)*(y-Circle->Center.y)
)
<=Circle->Radius*Circle->Radius
);
比较点到圆心的距离的平方与半径的平方,用来判断点是否在圆内,这个是数学问题。