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

जाँच करें कि C++ में आधार बदलने के तरीकों का उपयोग करके कोई संख्या k की शक्ति है या नहीं

यहां हम एक प्रोग्राम देखेंगे, यदि एक नंबर दिया गया है, तो दूसरा मान k भी दिया गया है, हमें यह जांचना है कि संख्या k की शक्ति है या नहीं। लेकिन हमें इस समस्या को हल करने के लिए आधार बदलने का तरीका अपनाना होगा। मान लीजिए कि एक संख्या 27 है, और k =3 है, तो आधार बदलने की विधि से, 27 10003 होगा। यहाँ आधार बदलने के बाद यदि अंक 1 की केवल एक घटना है, और अन्य 0 हैं, तो संख्या k की शक्ति है। ।

इस समस्या को हल करने के लिए, हम इन चरणों का पालन करेंगे।

कदम -

  • ध्वज परिभाषित करें:=झूठा
  • संख्या> 0 होने पर, चरण 3 से 6 तक दोहराएं
  • अंक खोजें:=संख्या मॉड k
  • यदि अंक> 1 है, तो झूठी वापसी करें
  • अन्यथा जब अंक 1 है, तो यदि ध्वज सत्य है, तो झूठी वापसी करें, अन्यथा ध्वजांकित करें:=सत्य।
  • सेट नंबर:=नंबर / के.
  • सही लौटें

उदाहरण

#include <iostream>
#include <cmath>
using namespace std;
bool isPowerOfK(int num, int k) {
   bool flag = false;
   while (num > 0) {
      int digit = num % k; //get current digit in base k
      if (digit > 1) //if the digit is not 0 or 1, then it is not power of k
      return false;
      if (digit == 1) {
         if (flag)
            return false;
         flag = true;
      }
      num /= k;
   }
   return true;
}
int main() {
   int number = 27, K = 3;
   if(isPowerOfK(number, K)){
      cout << number << " is power of " << K;
   } else {
      cout << number << " is not power of " << K;
   }
}

आउटपुट

27 is power of 3

  1. त्रिकोणीय संख्या की जांच के लिए C++ कोड

    मान लीजिए कि हमारे पास एक संख्या n है। हमें यह जांचना है कि संख्या त्रिकोणीय संख्या है या नहीं। जैसा कि हम जानते हैं, यदि n बिंदुओं (या गेंदों) को एक समबाहु त्रिभुज बनाने के लिए परतों में व्यवस्थित किया जा सकता है तो n एक त्रिभुज संख्या है। इसलिए, यदि इनपुट n =10 जैसा है, तो आउटपुट ट्रू होगा। कदम

  1. आधार B में अनुगामी शून्यों की संख्या ज्ञात कीजिए जो N का प्रतिनिधित्व करते हैं! सी ++ का उपयोग करना

    इस लेख में, हम किसी दी गई संख्या N के अनुगामी शून्य को उसके भाज्य के आधार B निरूपण में खोजने की समस्या को समझेंगे। उदाहरण के लिए Input : N = 7 Base = 2 Output : 4 Explanation : fact(7) = 5040 in base10 and 1001110110000 in base16 having 4 trailing zero. Input : N = 11 Base = 5 Output : 2 Explanatio

  1. N के आधार 16 निरूपण में अनुगामी शून्यों की संख्या ज्ञात कीजिए! सी ++ का उपयोग करना

    इस लेख में, हम उदाहरण के लिए इसके भाज्य के आधार 16 निरूपण में दी गई संख्या N के अनुगामी शून्यों को खोजने की समस्या को समझेंगे Input : N = 7 Output : 1 Explanation : fact(7) = 5040 in base10 and 13B0 in base16 having 1 trailing zero. Input : N = 11 Output : 2 Explanation : fact(11) = 39916800 in bas