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

जांचें कि क्या दो नंबर केवल पायथन में एक-बिट स्थिति में भिन्न हैं

मान लीजिए कि हमारे पास दो संख्याएँ x और y हैं। हमें यह जांचना होगा कि ये दोनों संख्याएं एक-बिट स्थिति में भिन्न हैं या नहीं।

इसलिए, यदि इनपुट x =25 y =17 जैसा है, तो आउटपुट सही होगा क्योंकि बाइनरी में x =11001 और y =10001। केवल एक-बिट स्थिति अलग है।

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

  • z =x XOR y
  • यदि z में सेट बिट्स की संख्या 1 है, तो
    • सही लौटें
  • झूठी वापसी

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

उदाहरण कोड

def bit_count(n):
   count = 0
   while n:
      count += n & 1
      n >>= 1
   return count
 
def solve(x, y):
   return bit_count(x ^ y) == 1

x = 25
y = 17
print(solve(x, y))

इनपुट

25,17

आउटपुट

True

  1. जांचें कि क्या दो संख्याओं के द्विआधारी प्रतिनिधित्व पायथन में विपर्यय हैं

    मान लीजिए कि हमारे पास दो नंबर x और y हैं, तो हमें यह जांचना होगा कि x और y का द्विआधारी प्रतिनिधित्व एक दूसरे के विपर्ययण हैं या नहीं। इसलिए, यदि इनपुट x =9 y =12 जैसा है, तो आउटपुट सही होगा क्योंकि 9 का बाइनरी प्रतिनिधित्व 1001 है और 12 का बाइनरी प्रतिनिधित्व 1100 है, इसलिए ये दोनों एक दूसरे के व

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

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

  1. हम पायथन में कैसे जांचते हैं कि स्ट्रिंग में केवल संख्याएं हैं या नहीं?

    पायथन में एक इन-बिल्ट फंक्शन isdigit() होता है जो अगर स्ट्रिंग के सभी कैरेक्टर डिजिट (0-9 के बीच) हो, तो सही रिटर्न देता है। >>> string='9764135408' >>> string.isdigit() True >>> string='091-9764135408' >>> string.isdigit() False आप रेगेक्स एक्सप्