इस समस्या में, हमें एक पूर्णांक a दिया जाता है जो समकोण त्रिभुज की एक भुजा को दर्शाता है। हमें जांचना है कि क्या भुजा a के साथ एक समकोण त्रिभुज बनाना संभव है। यदि संभव है, तो समकोण त्रिभुज की अन्य दो भुजाएं ढूंढें।
आइए एक उदाहरण से समस्या को समझते हैं,
इनपुट
a = 5
आउटपुट
भुजाएं : 5, 12, 13
व्याख्या
समकोण की भुजाएं 52 + 122 = 132 के रूप में पाई जाती हैं।
समाधान दृष्टिकोण
इस समस्या का एक सरल समाधान पाइथागोरस प्रमेय का उपयोग करना है। हम जानते हैं कि समकोण त्रिभुज की भुजाएं पाइथागोरस प्रमेय का पालन करती हैं, जो है
a2 + b2 = c2
जहां a और b त्रिभुज की भुजाएं हैं और c त्रिभुज का कर्ण है।
इसका उपयोग करके, हम a का उपयोग करके b और c के मानों की गणना करेंगे।
केस 1
यदि a सम है, c = (a2 + 4) + 1, b = (a2 + 4) - 1
केस 2
यदि a विषम है, c = (a2 + 1)/ 2, b = (a2 - 1)/ 2
हमारे समाधान की कार्यप्रणाली को दर्शाने वाला प्रोग्राम,
उदाहरण
#include <bits/stdc++.h> #include <cmath> using namespace std; #define PI 3.1415926535 void printOtherSides(int n) { int b,c; if (n & 1) { if (n == 1) cout << -1 << endl; else{ b = (n*n-1)/2; c = (n*n+1)/2; } } else { if (n == 2) cout << -1 << endl; else{ b = n*n/4-1; c = n*n/4+1; } } cout<<"Sides : a = "<<n<<", b = "<<b<<", c = "<<c<<endl; } int main() { int a = 5; printOtherSides(a); return 0; }आउटपुट
Sides : a = 5, b = 12, c = 13