हमें एक धनात्मक पूर्णांक N दिया गया है। लक्ष्य भिन्न गैर-ऋणात्मक धनात्मक पूर्णांकों के युग्मों की गणना करना है जो असमानता को संतुष्ट करते हैं - x*x + y*y
हम x=0 से x 2 . तक शुरू करेंगे लेफ्टिनेंट; N और y=0 से y 2 <एन. अगर कोई x 2 + y 2 <एन, जोड़ियों की संख्या बढ़ाएँ।
आइए उदाहरणों के साथ समझते हैं -
इनपुट - n=4
आउटपुट -अलग जोड़े=4
स्पष्टीकरण - जोड़े (0,0), (1,1), (0,1), (1,0) होंगे। ये सभी असमानता को संतुष्ट करते हैं x 2 + y 2 <4
इनपुट −n=2
आउटपुट -अलग जोड़े=3
स्पष्टीकरण और ऋण जोड़े (0,0), (0,1), (1,0) होंगे। ये सभी असमानता को संतुष्ट करते हैं x 2 + y 2 <2
नीचे दिए गए प्रोग्राम में इस्तेमाल किया गया तरीका इस प्रकार है
-
पूर्णांक N धनात्मक पूर्णांक को संग्रहीत करता है।
-
फ़ंक्शन countPairs(int n) इनपुट के रूप में n लेता है और असमानता को संतुष्ट करने वाले अलग-अलग गैर-ऋणात्मक सकारात्मक पूर्णांक जोड़े की गिनती देता है −x 2 + y 2 <एन.
-
गिनती ऐसे जोड़ियों की संख्या को प्रारंभ में 0.
. संग्रहित करती है -
i=0 से i2
-
अगर i2 + j2
-
परिणाम के रूप में अंत में वापसी की गिनती।
उदाहरण
#include <iostream> using namespace std; int countPairs(int n){ int count = 0; for (int i = 0; i*i < n; i++) for (int j = 0; j*j < n; j++) //x*x + y*y < n if(i*i + j*j < n) count++; return count; } int main(){ int N=4; cout << "Distinct Non-Negative integer pairs count: " << countPairs(N) ; return 0; }
आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा -
Distinct Non-Negative integer pairs count: 4