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

पायथन में जांचें कि किसी संख्या का बाइनरी प्रतिनिधित्व पालिंड्रोम है या नहीं


मान लीजिए हमारे पास एक संख्या n है। हमें जांचना है कि n का बाइनरी प्रतिनिधित्व पालिंड्रोम है या नहीं।

उदाहरण के लिए, यदि n = 9 है, तो आउटपुट True होगा क्योंकि 9 का बाइनरी प्रतिनिधित्व 1001 है जो पालिंड्रोम है।

हल करने का तरीका

  1. reverse_binary() फ़ंक्शन परिभाषित करें जो बाइनरी बिट्स को उल्टा करता है
  2. ans := 0
  3. जब तक num > 0:
    • ans := ans << 1 (बाएं शिफ्ट)
    • यदि num विषम है, तो ans := ans XOR 1
    • num := num >> 1 (दाएं शिफ्ट)
  4. ans लौटाएं
  5. मूल संख्या और उल्टी बाइनरी की तुलना करें

उदाहरण

def reverse_binary(num):
    ans = 0
    while num > 0:
        ans = ans << 1
        if num & 1 == 1:
            ans = ans ^ 1
        num = num >> 1
    return ans

def solve(n):
    rev = reverse_binary(n)
    return n == rev

n = 9
print(solve(n))

इनपुट

9

आउटपुट

True
  1. पायथन प्रोग्राम: अभाज्य संख्या जांचें पायथन प्रोग्राम: अभाज्य संख्या जांचें

    इस लेख में हम दी गई समस्या के समाधान के बारे में जानेंगे। समस्या कथन हमें एक संख्या दी गई है, हमें जांचना है कि दी गई संख्या अभाज्य संख्या है या नहीं। 1 से बड़ी दी गई धनात्मक संख्या जिसके 1 और संख्या स्वयं के अलावा कोई अन्य गुणनखंड नहीं होते, उसे अभाज्य संख्या कहा जाता है। 2, 3, 5, 7 आदि अभाज्य संख्

  1. पायथन प्रोग्राम: आर्मस्ट्रांग नंबर चेक करें पायथन प्रोग्राम: आर्मस्ट्रांग नंबर चेक करें

    इस लेख में, हम दिए गए प्रॉब्लम स्टेटमेंट को हल करने के समाधान और दृष्टिकोण के बारे में सीखेंगे। प्रॉब्लम स्टेटमेंट एक इंटीजर n दिए जाने पर, हमें जांचना होगा कि दिया गया इंटीजर आर्मस्ट्रांग नंबर है या नहीं। एक पॉजिटिव इंटीजर को n क्रम का आर्मस्ट्रांग नंबर कहा जाता है यदि abcd... = a^n + b^n + c^n +

  1. - बाइनरी संख्या में K लगातार 1 हैं या नहीं जांचने का पायथन प्रोग्राम

    समस्या विवरण सबसे पहले हम 1 और 0 के संयोजन के साथ एक यूजर इनपुट स्ट्रिंग लेते हैं। फिर 1 की एक नई स्ट्रिंग बनाते हैं, फिर जांचते हैं कि क्या p संख्या में लगातार 1 मौजूद हैं या नहीं। यदि मौजूद हैं तो FOUND प्रदर्शित करें अन्यथा NOT FOUND। उदाहरण बाइनरी संख्या ::1111001111 लगातार 1 दर्ज करें :3 लगाता