ट्रैक
/
Prolog
Prolog
/
अभ्यास
/
पाइथागोरस त्रिक
पाइथागोरस त्रिक

पाइथागोरस त्रिक

मध्यम

परिचय

आप समस्याएँ हल करने में निपुण हैं और सबसे कठिन गणितीय पहेलियाँ सुलझाने के लिए प्रसिद्ध हैं। एक शाम आपको Triangle Tinkerer नाम के एक आविष्कारक का एक ज़रूरी पत्र मिलता है, जो एक नए और अभूतपूर्व प्रोजेक्ट पर काम कर रहे हैं। पत्र में लिखा है:

प्रिय गणितज्ञ,

मुझे आपकी मदद चाहिए। मैं एक ऐसा उपकरण बना रहा हूँ जो पाइथागोरस त्रिक की अनोखी विशेषताओं पर निर्भर करता है, यानी तीन पूर्णांकों के ऐसे समूह जो समीकरण a² + b² = c² को संतुष्ट करते हैं। यह उपकरण नेविगेशन में क्रांति ला देगा, लेकिन इसके काम करने के लिए मुझे इसे हर ऐसे त्रिक से प्रोग्राम करना होगा जिसमें a, b और c का योग एक निश्चित संख्या N के बराबर हो। इन त्रिकों को हाथ से निकालने में मुझे सालों लग जाएँगे, लेकिन मैंने सुना है कि आप इस काम को आसानी से कर सकते हैं।

समय बहुत कम है। मेरे आविष्कार का भविष्य, और शायद गणितीय नवाचार का भविष्य भी, इस बात पर निर्भर करता है कि आप यह समस्या हल कर पाते हैं या नहीं।

इस काम के महत्व से प्रेरित होकर आप वे सारे पाइथागोरस त्रिक खोजने निकल पड़ते हैं जो इस शर्त को पूरा करते हैं। आपके इस काम का असर बहुत दूर तक पहुँच सकता है और यह विज्ञान और इंजीनियरिंग में नई संभावनाएँ खोल सकता है। क्या आप इस चुनौती का सामना करके इतिहास रच सकते हैं?

निर्देश

पाइथागोरस त्रिक तीन प्राकृतिक संख्याओं का एक समूह है, {a, b, c}, जिसके लिए

a² + b² = c²

होता है और जिसमें

a < b < c

भी होता है।

उदाहरण के लिए,

3² + 4² = 5².

इनपुट के रूप में एक पूर्णांक N दिया गया हो, तो वे सारे पाइथागोरस त्रिक खोजिए जिनके लिए a + b + c = N हो।

उदाहरण के लिए, N = 1000 लेने पर ठीक एक ऐसा पाइथागोरस त्रिक होता है जिसके लिए a + b + c = 1000 हो: {200, 375, 425}.

बोनस

अंतिम टेस्ट एक बोनस टेस्ट है और वैकल्पिक है। इस टेस्ट को चालू करके देखिए, ताकि पता चले कि बड़े इनपुट योग पर आपका कोड कितना अच्छा काम करता है।

GitHub के ज़रिए संपादित करें यह लिंक एक नई विंडो या टैब में खुलता है
Prolog Exercism

पाइथागोरस त्रिक शुरू करने के लिए तैयार हैं?

Exercism पर साइन अप कीजिए और Prolog को 109 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।