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

C++ में कोई संख्या Proth संख्या है या नहीं यह जांचने के लिए प्रोग्राम

एक संख्या 'एन' के साथ दिया गया है और कार्य यह निर्धारित करना है कि दिया गया सकारात्मक पूर्णांक एक प्रोथ है या नहीं और परिणाम को आउटपुट के रूप में प्रदर्शित करता है।

प्रोथ नंबर क्या है?

एक प्रोथ नंबर

. द्वारा दिया जाता है

$$N=k\cdot\:2^{n}+1$$

जहाँ, n एक धनात्मक पूर्णांक है और k एक विषम धनात्मक पूर्णांक है

पहले कुछ प्रोथ नंबर नीचे दिए गए हैं -

3, 5, 9, 13, 17, 25, 33, 41, 49, 57, 65, 81, 97.......

इनपुट

number: 17

आउटपुट

its a proth number

इनपुट

number: 18

आउटपुट

its not a proth number

दिए गए प्रोग्राम में उपयोग किया गया दृष्टिकोण इस प्रकार है

  • स्थिति की जांच के लिए नंबर दर्ज करें

  • दिए गए फॉर्मूले को यह जांचने के लिए लागू करें कि यह प्रोथ नंबर है या नहीं

  • यदि शर्त सही है तो इसका एक प्रोथ नंबर प्रिंट करें

  • यदि शर्त सही नहीं है तो प्रिंट करें यह प्रोथ नंबर नहीं है

एल्गोरिदम

Step 1→ declare function to calculate power of 2
   bool isPower(int num)
      return (num && !(num & (num - 1)))
Step 2→ Declare function to check if a number is a proth number or not
   bool isProth(int num)
      declare int k = 1
      While (k < (num / k))
         IF (num % k == 0)
            IF (isPower(num / k))
               return true
            End
            Set k = k + 2
         End
      End
      return false
Step 3→ In main()
   Declare int num = 17
   IF (isProth(num - 1))
      Print "its a proth number"
   End
   Else
      Print "its not a proth number"
End

उदाहरण

#include <bits/stdc++.h>
using namespace std;
//function to calculate power of 2
bool isPower(int num){
   return (num && !(num & (num - 1)));
}
//function to check if a number is a proth number
bool isProth(int num){
   int k = 1;
   while (k < (num / k)){
      if (num % k == 0){
         if (isPower(num / k))
            return true;
      }
      k = k + 2;
   }
   return false;
}
int main(){
   int num = 17;
   if (isProth(num - 1))
      cout << "its a proth number";
   else
      cout << "its not a proth number";
   return 0;
}

आउटपुट

यदि उपरोक्त कोड चलाया जाता है तो यह निम्न आउटपुट उत्पन्न करेगा -

its a proth number

  1. यह जांचने के लिए प्रोग्राम कि कोई पेड़ ऊंचाई संतुलित है या नहीं C++

    मान लीजिए हमारे पास एक बाइनरी ट्री है; हमें जांचना है कि इसकी ऊंचाई संतुलित है या नहीं। हम जानते हैं कि एक संतुलित ऊंचाई वाले पेड़ के लिए, पेड़ में प्रत्येक नोड के लिए, इसके बाएं उपट्री की ऊंचाई और इसके दाएं उपट्री की ऊंचाई का पूर्ण अंतर 0 या 1 है। तो, अगर इनपुट पसंद है तो आउटपुट सही होगा इसे ह

  1. C++ प्रोग्राम यह जांचने के लिए कि कोई ग्राफ़ मजबूती से जुड़ा है या नहीं

    निर्देशित ग्राफ़ में घटकों को दृढ़ता से जुड़ा हुआ कहा जाता है, जब एक घटक में प्रत्येक जोड़ी के बीच एक पथ होता है। इस एल्गोरिथम को हल करने के लिए, सबसे पहले, प्रत्येक शीर्ष का अंतिम समय प्राप्त करने के लिए DFS एल्गोरिथ्म का उपयोग किया जाता है, अब ट्रांसपोज़्ड ग्राफ़ का अंतिम समय ज्ञात करें, फिर शी

  1. जावा प्रोग्राम यह जांचने के लिए कि कोई नंबर प्राइम है या नहीं

    इस लेख में, हम समझेंगे कि कैसे जांचा जाए कि कोई संख्या अभाज्य है या नहीं। अभाज्य संख्याएँ विशेष संख्याएँ होती हैं जिनके केवल दो गुणनखंड 1 और स्वयं होते हैं और इन्हें किसी अन्य संख्या से विभाजित नहीं किया जा सकता है। एक संख्या एक अभाज्य संख्या होती है यदि उसके केवल गुणनखंड 1 और स्वयं हों। 11 एक अभाज्