Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

C++ में जांचें कि क्या कोई पॉइंट d, पॉइंट्स a, b, c द्वारा परिभाषित सर्कल के अंदर या बाहर है


हम एक C++ प्रोग्राम पर विचार करेंगे जो समीकरण का उपयोग करके जांचता है कि क्या कोई पॉइंट d, प्लेन में पॉइंट्स a, b, c द्वारा परिभाषित सर्कल के अंदर या बाहर है

s = (x-xt)^2 + (y-yt)^2 – r*r

जहां, प्लेन पर किसी भी पॉइंट t (xt, yt) के लिए, 3 पॉइंट्स (x1, y1), (x2, y2), (x3, y3) द्वारा परिभाषित सर्कल के संबंध में उसकी स्थिति।

s < 0 के लिए, t सर्कल के अंदर है।

s >0 के लिए, t सर्कल के बाहर है।

s = 0 के लिए, t सर्कल पर है।

एल्गोरिदम

Begin    पॉइंट्स को इनपुट पर लें।    कॉन्स्टेंट L = 0 और H = 20 डिक्लेयर करें    समीकरण के वेरिएबल्स डिक्लेयर करें।    समीकरण उत्पन्न करने के लिए, कंपाइलेशन के हर बार rand का उपयोग करके x और y के गुणांक के लिए रैंडम नंबर उत्पन्न करें।    सर्कल के सेंटर की गणना करें।    सर्कल की त्रिज्या की गणना करें।    s की गणना करें।    यदि s < 0, तो पॉइंट सर्कल के अंदर है प्रिंट करें।     अन्यथा यदि s >0, तो पॉइंट सर्कल के बाहर है प्रिंट करें।     अन्यथा यदि s = 0, तो पॉइंट सर्कल पर है प्रिंट करें। End

उदाहरण कोड

#include<time.h> #include<stdlib.h> #include<iostream> #include<math.h> using namespace std; const int L= 0; const int H = 20; int main(int argc, char **argv) {    time_t s;    time(&s);    srand((unsigned int) s);    double x1, x2, y1, y2, x3, y3;    double a1, a2, c1, c2, r;    x1 = rand() % (H - L+ 1) + L;    x2 = rand() % (H - L + 1) + L;    x3 = rand() % (H- L + 1) + L;    y1 = rand() % (H- L + 1) + L;    y2 = rand() % (H- L+ 1) + L;    y3 = rand() % (H- L + 1) + L;    a1 = (y1 - y2) / (x1 - x2);    a2 = (y3 - y2) / (x3 - x2);    c1 = ((a1 * a2 * (y3 - y1)) + (a1 * (x2 + x3)) - (a2 * (x1 + x2))) / (2 * (a1 - a2));//सर्कल का सेंटर कैलकुलेट करें    c2 = ((((x1 + x2) / 2) - c1) / (-1 * a1)) + ((y1 + y2) / 2);//सर्कल का सेंटर कैलकुलेट करें    r = sqrt(((x3 - c1) * (x3 - c1)) + ((y3 - c2) * (y3 - c2)));//त्रिज्या कैलकुलेट करें    cout << "The points on the circle are: (" << x1 << ", " << y1 << "), (" << x2 << ", " << y2 << "), (" << x3 << ", " << y3 << ")";    cout << "\nThe center of the circle is (" << c1 << ", " << c2 << ") and radius is " << r;    cout << "\nEnter the point : ";    int u, v;    cin >>u;    cin >>v;    double s1 = ((u - c1) * (u - c1)) + ((v - c2) * (v - c1)) - (r * r);    if (s1 < 0)       cout << "\nThe point lies inside the circle";    else if (s1 >0)       cout << "\nThe point lies outside the circle";    else       cout << "\nThe point lies on the circle";       return 0; }

आउटपुट

The points on the circle are: (8, 4), (9, 17), (5, 9) The center of the circle is (12.6364, 10.8182) and radius is 7.84983 Enter the point : 7 6 The point lies outside the circle

  1. C++ में जांचें कि दिया गया वृत्त दो संकेंद्रित वृत्तों द्वारा बने छल्ले के अंदर पूरी तरह से स्थित है या नहीं C++ में जांचें कि दिया गया वृत्त दो संकेंद्रित वृत्तों द्वारा बने छल्ले के अंदर पूरी तरह से स्थित है या नहीं

    r। एक और वृत्त भी मौजूद है। इसकी त्रिज्या (r1) और केंद्र बिंदु दिए गए हैं, हमें जांचना है कि वह बिंदु पहले दो वृत्तों द्वारा बने छल्ले के अंदर है या नहीं।= r और (दूरी - r1) <= R, यदि दोनों सत्य हैं, तो वृत्त छल्ले के अंदर है।उदाहरण#include <iostream> #include <cmath> using namespace std;

  1. C++ में इन्वोल्यूटरी मैट्रिक्स जांचें C++ में इन्वोल्यूटरी मैट्रिक्स जांचें

    एक मैट्रिक्स M[r][c] दिया गया है, r पंक्तियों की संख्या दर्शाता है और c कॉलम की संख्या दर्शाता है जैसे कि r = c एक स्क्वायर मैट्रिक्स बनाता है। हमें जांचना है कि दिया गया स्क्वायर मैट्रिक्स इन्वोल्यूटरी मैट्रिक्स है या नहीं।इन्वोल्यूटरी मैट्रिक्सएक मैट्रिक्स को इन्वोल्यूटरी मैट्रिक्स कहा जाता है यदि

  1. पायथन में जांचें कि कोई बिंदु आयत के अंदर या पर स्थित है या नहीं पायथन में जांचें कि कोई बिंदु आयत के अंदर या पर स्थित है या नहीं

    मान लीजिए हमारे पास एक आयत है जिसे दो बिंदुओं द्वारा दर्शाया गया है: निचला-बायां (bottom-left) और ऊपरी-दायां (top-right) कोना। हमें यह जांचना है कि क्या दिया गया बिंदु (x, y) इस आयत के अंदर मौजूद है या नहीं। उदाहरण के लिए, यदि इनपुट bottom_left = (1, 1), top_right = (8, 5), point = (5, 4) है, तो आउ