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

C++ में रिकर्सन का उपयोग करके G.C.D. (महत्तम समापवर्तक) खोजने का प्रोग्राम


दो संख्याओं का महत्तम समापवर्तक (GCD) वह सबसे बड़ी संख्या है जो दोनों को विभाजित करती है।

उदाहरण के लिए: मान लें हमारे पास निम्नलिखित दो संख्याएँ हैं: 45 और 27

63 = 7 * 3 * 3 42 = 7 * 3 * 2 तो, 63 और 42 का GCD 21 है

रिकर्सन का उपयोग करके दो संख्याओं का GCD खोजने का एक प्रोग्राम निम्नलिखित है।

उदाहरण

#include<iostream> using namespace std; int gcd(int a, int b) {    if (a == 0 || b == 0)    return 0;    else if (a == b)    return a;    else if (a > b)    return gcd(a-b, b);    else return gcd(a, b-a); } int main() {    int a = 63, b = 42;    cout<<"GCD of "<< a <<" and "<< b <<" is "<< gcd(a, b);    return 0; }

आउटपुट

GCD of 63 and 42 is 21

उपरोक्त प्रोग्राम में, gcd() एक रिकर्सिव फ़ंक्शन है। इसके दो पैरामीटर्स हैं यानी a और b। यदि a या b 0 है, तो फ़ंक्शन 0 लौटाता है। यदि a या b बराबर हैं, तो फ़ंक्शन a लौटाता है। यदि a, b से बड़ा है, तो फ़ंक्शन मान a-b और b के साथ स्वयं को रिकर्सिवली कॉल करता है। यदि b, a से बड़ा है, तो फ़ंक्शन मान a और b-a के साथ स्वयं को रिकर्सिवली कॉल करता है।

यह निम्नलिखित कोड स्निपेट द्वारा प्रदर्शित होता है।

int gcd(int a, int b) {    if (a == 0 || b == 0)    return 0;    else if (a == b)    return a;    else if (a > b)    return gcd(a-b, b);    else return gcd(a, b-a); }

रिकर्सन का उपयोग करके दो संख्याओं का GCD खोजने की एक अन्य विधि निम्नलिखित है।

उदाहरण

#include <iostream> using namespace std; int gcd(int a, int b) {    if (b == 0)    return a;    return gcd(b, a % b); } int main() {    int a = 63, b = 42;    cout<<"GCD of "<< a <<" and "<< b <<" is "<< gcd(a, b);    return 0; }

आउटपुट

GCD of 63 and 42 is 21

उपरोक्त प्रोग्राम में, gcd() एक रिकर्सिव फ़ंक्शन है। इसके दो पैरामीटर्स हैं यानी a और b। यदि b 0 से बड़ा है, तो a को main() फ़ंक्शन में लौटाया जाता है। अन्यथा, gcd() फ़ंक्शन मान b और a%b के साथ स्वयं को रिकर्सिवली कॉल करता है।

यह निम्नलिखित कोड स्निपेट का उपयोग करके प्रदर्शित होता है।

int gcd(int a, int b) {    if (b == 0)    return a;    return gcd(b, a % b); }

  1. रिकर्सिव फंक्शन का उपयोग करके संख्याओं का GCD खोजने का C प्रोग्राम रिकर्सिव फंक्शन का उपयोग करके संख्याओं का GCD खोजने का C प्रोग्राम

    समस्या C प्रोग्रामिंग भाषा में रिकर्सिव फंक्शन का उपयोग करके दो दी गई संख्याओं के लिए महत्तम सामान्य भाजक (GCD) खोजें। समाधान रिकर्सिव फंक्शन का उपयोग करके दो दी गई संख्याओं के लिए महत्तम सामान्य भाजक (GCD) खोजने का समाधान निम्नानुसार है: एल्गोरिथम रिकर्सिव फंक्शन का उपयोग करके दो दी गई संख्याओं क

  1. C++ का उपयोग करके एलिप्स का क्षेत्रफल ज्ञात करना C++ का उपयोग करके एलिप्स का क्षेत्रफल ज्ञात करना

    यहां हम देखेंगे कि C++ का उपयोग करके एलिप्स का क्षेत्रफल कैसे प्राप्त किया जाए। एलिप्स के विभिन्न भाग होते हैं। ये नीचे दिए गए हैं।मुख्य बिंदुविवरणसेंटरएलिप्स का केंद्र। यह उन लाइन सेगमेंट्स का भी केंद्र है जो दो फोकी को जोड़ते हैं।मेजर एक्सिसएलिप्स का सबसे लंबा व्यासnmembयह एलिमेंट्स की संख्या है,

  1. - C++ प्रोग्राम: GCD (महत्तम समापवर्तक) खोजें

    परिचयदो संख्याओं का महत्तम समापवर्तक (GCD) वह सबसे बड़ी संख्या है जो दोनों को विभाजित करती है। उदाहरण के लिए: मान लें हमारे पास दो संख्याएं हैं 45 और 27। 45 = 5 * 3 * 3 27 = 3 * 3 * 3 इसलिए, 45 और 27 का GCD 9 है। उदाहरण 1 (यूक्लिडियन एल्गोरिदम)#include <iostream> using namespace std; int gcd(