Cho hai đường tròn cùng tâm tại gốc tọa độ. Bán kính của chúng là r và R (với R > r). Một đường tròn thứ ba với bán kính r1 và tâm (x, y) cũng cho trước. Ta phải kiểm tra xem đường tròn thứ ba có nằm hoàn toàn trong vùng vòng tròn (khoảng giữa hai đường tròn tâm đồng tâm) hay không.

Ta giải quyết bằng định lý Pythagore: tính khoảng cách từ tâm đường tròn thứ ba đến gốc tọa độ. Nếu (khoảng_cách - r1) >= r và (khoảng_cách + r1) <= R thì đường tròn nằm trong vòng tròn.
Ví dụ
#include <iostream>
#include <cmath>
using namespace std;
bool isInside(int r, int R, int r1, int x, int y) {
int dis = sqrt(x*x + y*y);
return (dis - r1 >= r && dis + r1 <= R);
}
int main() {
int r = 8, R = 4, r1 = 2, x = 6, y = 0;
if (isInside(r, R, r1, x, y))
cout << "Circle is inside the ring." << endl;
else
cout << "Circle is not inside the ring." << endl;
}
Kết quả
Circle is inside the ring.