पुनरावर्तन को समझने के लिए, आपको पुनरावर्तन को समझने की आवश्यकता है
Problem
यूक्लिड के एल्गोरिथ्म का एक और संस्करण है, जिसमें घटाव की संक्रिया को शेषफल की गणना की संक्रिया से बदल दिया जाता है।
इस संस्करण को आज बेहतर माना जाता है, क्योंकि इसमें औसतन काफी कम संख्या में चरण होते हैं। हालाँकि, उन दिनों में जब कंप्यूटर बड़े और धीमे थे, डिवीजन ऑपरेशन अपने आप में एक जटिल प्रक्रिया हो सकती थी। और फिर एल्गोरिथ्म का पहला संस्करण अधिक कुशल हो सकता है।
मॉड्यूलो ऑपरेशन के साथ घटाव को बदलकर यूक्लिड के एल्गोरिथ्म को लागू करें।
दो प्राकृत संख्याएँ
A
और
B
दी गई हैं। एक फंक्शन
nod(A, B)
लिखें जो
A
और
B
का महत्तम समापवर्तक देता है।
कार्यक्रम के उदाहरण
<टेबल क्लास = "टेबल-बॉर्डर टेबल-एसएम टेबल-स्ट्राइप्ड">
<सिर>
<वें>#वें>
<वें>इनपुटवें>
<वें>आउटपुटवें>
बात>
<शरीर>
1 |
12 42 |
6 |
टेबल>
याद रखें कि आप अपने समाधान में लूप का उपयोग नहीं कर सकते हैं।
आपको केवल एक फ़ंक्शन लिखने की आवश्यकता है, कुछ भी दर्ज करने और आउटपुट करने की आवश्यकता नहीं है!Запрещенные операторы: for;while;do;until;gcd