ধরুন আমাদের দুটি বৃত্ত আছে (কেন্দ্র বিন্দু এবং ত্রিজ্যা মান)। আমাদের যাচাই করতে হবে এক বৃত্ত অন্য বৃত্তের ভিতরে ফিট হয় কিনা। তিনটি সম্ভাব্য কেস আছে:
- ছোট বৃত্টি বড় বৃত্তের সম্পূর্ণ ভিতরে আছে, একে অপরের সাথে স্পর্শ না করে। এই কেসে, কেন্দ্র দুটির মধ্যে দূরত্ব এবং ছোট ত্রিজ্যার যোগফল বড় ত্রিজ্যা থেকে কম। তাই ছোটটি বড়টির ভিতরে।
- দ্বিতীয় কেস: ছোট বৃত্টি বড়টির ভিতরে আছে, কিন্তু বড়টির পরিধি স্পর্শ করছে।
- তৃতীয় কেস: ছোট বৃত্তের কিছু অংশ বড়টির ভিতরে আছে।
এটি সমাধান করতে দুটি কেন্দ্রের মধ্যে দূরত্ব বের করতে হবে, তারপর দূরত্ব এবং ত্রিজ্যা মান ব্যবহার করে সেই কেসগুলো নির্ধারণ করতে হবে।
উদাহরণ
#include <iostream> #include <cmath> using namespace std; void isCircleInside(int x_big, int y_big, int x_small, int y_small, int r_big, int r_small) { int distSq = sqrt(((x_big - x_small) * (x_big - x_small)) + ((y_big - y_small) * (y_big - y_small))); if (distSq + r_small == r_big) cout << "Inside the bigger circle, touching circimferene" << endl; else if (distSq + r_small < r_big) cout << "Completely inside the bigger circle" << endl; else cout << "Not inside the bigger circle" << endl; } int main() { int x1 = 10, y1 = 8; int x2 = 1, y2 = 2; int r1 = 30, r2 = 10; isCircleInside(x1, y1, x2, y2, r1, r2); }আউটপুট
Completely inside the bigger circle