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

C++ में x^(y^2) और y^(x^2) में से बड़ा मान ढूंढें जहां x और y दिए गए हैं


इस समस्या में, हमें दो मान x और y दिए गए हैं। हमारा कार्य x^(y^2) और y^(x^2) में से बड़ा मान ढूंढना है जहां x और y दिए गए हैं।

समस्या को समझने के लिए एक उदाहरण लेते हैं,

इनपुट: x = 4, y = 3

आउटपुट: 3^(4^2)

व्याख्या:

x^(y^2) = 4^(3^2) = 4^9 = 262144
y^(x^2) = 3^(4^2) = 3^16 = 43046721

समाधान दृष्टिकोण

एक दृष्टिकोण दोनों मानों की गणना करना और फिर दोनों में से अधिकतम प्रिंट करना हो सकता है। लेकिन यह विधि तब काम नहीं करती जब मान बड़े हों।

एक सरल और आसान दृष्टिकोण प्राकृतिक लॉग (ln) का उपयोग करना है जो समाधान को आसान बनाता है।

ln(x^(y^2)) = (y^2) * ln(x)

ln(y^(x^2)) = (x^2) * ln(y)

यहां, मान सीधे x और y के समानुपाती नहीं हैं। तो, आइए मानों को (x^2)*(y^2) से विभाजित करें। इससे मान बनता है,

ln(x^(y^2)) / (x^2)*(y^2) = ln(x) / (x^2)

ln(y^(x^2)) / (x^2)*(y^2) = ln(y)/ (y^2)

ये मान परिणामी मान के व्युत्क्रमानुपाती हैं।

यदि x > y, तो x^(y^2) < y^(x^2)

हमारे समाधान की कार्यप्रणाली को दर्शाने वाला प्रोग्राम,

उदाहरण

#include <iostream>
using namespace std;

bool checkGreaterVal(int x, int y) {
    if (x > y)
        return false;
    else
        return true;
}

int main() {
    int x = 3;
    int y = 5;
    cout<<"The greater value is ";
    if(checkGreaterVal(x, y))
        cout<<x<<"^("<<y<<"^2)";
    else
        cout<<y<<"^("<<x<<"^2)";
    return 0;
}

आउटपुट

The greater value is 3^(5^2)

  1. C++ में बाइनरी ट्री के सभी दाएं नोड्स में अधिकतम मान ढूंढें C++ में बाइनरी ट्री के सभी दाएं नोड्स में अधिकतम मान ढूंढें

    इस समस्या में, हमें एक बाइनरी ट्री दिया गया है। हमारा कार्य बाइनरी ट्री में सभी दाएं नोड्स में अधिकतम मान ढूंढना है। समस्या विवरण: यहां, हमें बाइनरी ट्री के सभी दाएं चाइल्ड नोड्स में अधिकतम मान ढूंढना है। समस्या को समझने के लिए एक उदाहरण लेते हैं, इनपुट: आउटपुट: 9 व्याख्या: सभी दाएं नोड्स हैं: {2,

  1. - C++ में योग और GCD दिए जाने पर दो संख्याएं ढूंढना

    हमारे पास दो संख्याओं a और b का योग और GCD है। हमें दोनों संख्याएं a और b ढूंढनी हैं। यदि यह संभव नहीं है, तो -1 लौटाएं। मान लीजिए योग 6 है और GCD 2 है, तो संख्याएं 4 और 2 हैं।दृष्टिकोण ऐसा है, चूंकि GCD दिया गया है, तो यह ज्ञात है कि संख्याएं इसके गुणक होंगी। अब निम्न चरण हैंयदि हम पहली संख्या को G

  1. - C++ में दिए गए GCD और LCM के साथ कोई भी पेयर खोजें

    इस सेक्शन में हम देखेंगे कि दिए गए GCD और LCM मानों का उपयोग करके नंबर पेयर्स की संख्या कैसे प्राप्त करें। मान लीजिए GCD और LCM मान 2 और 12 हैं। अब नंबरों के संभावित पेयर्स हैं (2, 12), (4, 6), (6, 4) और (12, 2)। इसलिए हमारा प्रोग्राम पेयर्स की संख्या ढूंढेगा। वह 4 है।आइए एल्गोरिदम देखें कि इस समस्य