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

C++ प्रोग्राम: संख्या की घात की गणना करें

परिचय

किसी संख्या की घात की गणना x^y के रूप में की जा सकती है जहां x संख्या है और y उसकी घात है।

उदाहरण के लिए, x = 2 और y = 10, तो x^y = 1024।

संख्या की घात की गणना रिकर्सिव और नॉन-रिकर्सिव प्रोग्राम का उपयोग करके की जा सकती है। दोनों नीचे दिए गए हैं।

नॉन-रिकर्सिव प्रोग्राम का उपयोग करके संख्या की घात

नॉन-रिकर्सिव प्रोग्राम का उपयोग करके संख्या की घात खोजने का प्रोग्राम इस प्रकार है -

उदाहरण

#include <iostream>
using namespace std;

int power(int x, int y) {
    int i, power = 1;
    if (y == 0)
        return 1;
    for (i = 1; i <= y; i++)
        power = power * x;
    return power;
}

int main() {
    int x = 3;
    int y = 4;
    cout << "x = " << x << endl;
    cout << "y = " << y << endl;
    cout << "x^y = " << power(x, y);
    return 0;
}

आउटपुट

x = 3
y = 4
x^y = 81

उपरोक्त प्रोग्राम में, power() फ़ंक्शन का उपयोग संख्या की घात की गणना के लिए किया जाता है। यह एक नॉन-रिकर्सिव फ़ंक्शन है। फ़ंक्शन में, एक for लूप का उपयोग किया जाता है जो 1 से y तक चलता है। लूप के प्रत्येक पुनरावृत्ति के लिए, x को power से गुणा किया जाता है।

इसलिए, x को स्वयं y बार गुणा किया जाता है और परिणाम power में संग्रहीत होता है। इससे x^y power में संग्रहीत होता है। फिर power को main() फ़ंक्शन में लौटाया जाता है।

रिकर्सिव प्रोग्राम का उपयोग करके संख्या की घात

रिकर्सिव प्रोग्राम का उपयोग करके संख्या की घात खोजने का प्रोग्राम इस प्रकार है।

उदाहरण

#include <iostream>
using namespace std;

int power(int x, int y) {
    if (y == 0)
        return 1;
    else if (y % 2 == 0)
        return power(x, y/2) * power(x, y/2);
    else
        return x * power(x, y/2) * power(x, y/2);
}

int main() {
    int x = 3;
    int y = 4;
    cout << "x = " << x << endl;
    cout << "y = " << y << endl;
    cout << "x^y = " << power(x, y);
    return 0;
}

आउटपुट

x = 3
y = 4
x^y = 81

उपरोक्त प्रोग्राम में, power() एक रिकर्सिव फ़ंक्शन है। यदि y का मान 0 है, तो यह 1 लौटाता है। यदि y सम है, तो यह स्वयं को x और y/2 मानों के साथ पुनरावर्ती रूप से कॉल करता है और power(x, y/2)*power(x, y/2) लौटाता है। यदि y विषम है, तो यह स्वयं को x और y/2 मानों के साथ पुनरावर्ती रूप से कॉल करता है और x*power(x, y/2)*power(x, y/2) लौटाता है।

  1. - C++ में रिकर्सन का उपयोग करके संख्या का फैक्टोरियल गणना करने का प्रोग्राम

    एक गैर-ऋणात्मक पूर्णांक n का फैक्टोरियल उन सभी धनात्मक पूर्णांकों का गुणनफल होता है जो n से कम या बराबर होते हैं। उदाहरण के लिए: 7 का फैक्टोरियल 5040 है। 7! = 7 * 6 * 5 * 4 * 3 * 2 *1 7! = 5040 आइए रिकर्सन का उपयोग करके किसी संख्या का फैक्टोरियल गणना करने का कोड देखते हैं। उदाहरण #include <iostre

  1. - C++ प्रोग्राम: संख्या को उल्टा करें

    परिचयसंख्या को उल्टा करने का अर्थ है उसके अंकों को उल्टे क्रम में संग्रहीत करना। उदाहरण के लिए: यदि संख्या 6529 है, तो आउटपुट में 9256 प्रदर्शित होगा। उदाहरण#include <iostream> using namespace std; int main() { int num = 63972, rev = 0; while (num > 0) { rev = rev * 10 + nu

  1. - जावा प्रोग्राम में किसी संख्या की घात (Power) की गणना करें

    इस लेख में हम समझेंगे कि किसी संख्या की घात (power) की गणना कैसे की जाती है। किसी संख्या की घात की गणना लूप का उपयोग करके और उस संख्या को कई बार स्वयं से गुणा करके की जाती है। नीचे इसका प्रदर्शन दिया गया है: इनपुट मान लीजिए हमारा इनपुट है: संख्या: 4 घातांक मान: 5 आउटपुट वांछित आउटपुट निम्न होगा अर्