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

पायथन में 2 की पुन:व्यवस्थित शक्ति खोजने का कार्यक्रम

मान लीजिए कि हमारे पास एक धनात्मक पूर्णांक N है, हम अंकों को किसी भी क्रम में (मूल क्रम सहित) इस प्रकार पुन:व्यवस्थित करते हैं कि प्रमुख अंक गैर-शून्य हो। हमें यह जांचना होगा कि क्या हम इसे इस तरह से कर सकते हैं कि परिणामी संख्या 2 की शक्ति हो।

इसलिए, अगर इनपुट एन =812 जैसा है, तो आउटपुट ट्रू होगा

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

  • मैं:=1

  • जबकि मैं<=1000000000, करता हूं

    • s:=मैं एक स्ट्रिंग के रूप में

    • s:=s के वर्णों को क्रमबद्ध करें

    • t:=n एक स्ट्रिंग के रूप में

    • t:=t के वर्णों को क्रमबद्ध करें

    • यदि s, t के समान है, तो

      • सही लौटें

    • मैं:=मैं*2

  • झूठी वापसी

उदाहरण

आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -

def solve(n):
   i=1
   while i<=1000000000:

      s=str(i)
      s=''.join(sorted(s))
      t=str(n)
      t=''.join(sorted(t))
      if s==t:
         return True

      i=i*2

   return False

N = 812
print(solve(N))

इनपुट

812

आउटपुट

True

  1. पायथन में बहुभुज का क्षेत्रफल ज्ञात करने का कार्यक्रम

    मान लीजिए कि हमारे पास ऑर्डर किए गए बिंदुओं की एक सूची है जो 2 डी विमान पर एक साधारण बहुभुज समापन बिंदु का प्रतिनिधित्व करती है। हमें इस बहुभुज का क्षेत्रफल ज्ञात करना है। इसलिए, यदि इनपुट अंक =[(0, 0), (0,5), (3, 5), (3,0)] की तरह है, तो आउटपुट 15 होगा। इसे हल करने के लिए, हम इन चरणों का पालन क

  1. पायथन में बहुभुज की परिधि खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास ऑर्डर किए गए बिंदुओं की एक सूची है जो 2 डी विमान पर एक साधारण बहुभुज समापन बिंदु का प्रतिनिधित्व करती है। हमें इस बहुभुज का परिमाप ज्ञात करना है। इसलिए, यदि इनपुट अंक =[(0, 0), (0,5), (3, 5), (3,0)] की तरह है, तो आउटपुट 16 होगा क्योंकि दो भुजाओं की लंबाई 3 है और दो भुजाओं

  1. पायथन प्रोग्राम यह पता लगाने के लिए कि क्या नहीं दो की शक्ति है

    इस लेख में, हम दिए गए समस्या कथन को हल करने के लिए समाधान और दृष्टिकोण के बारे में जानेंगे। समस्या कथन एक संख्या n को देखते हुए, हमें यह जांचना होगा कि दी गई संख्या दो की घात है या नहीं। दृष्टिकोण इनपुट संख्या को दो से विभाजित करना जारी रखें, अर्थात =n/2 पुनरावृत्त रूप से। हम प्रत्येक पुनरावृ