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

एक रेंज में अनसेट बिट्स गिनने के लिए पायथन प्रोग्राम

समस्या विवरण

एक धनात्मक संख्या और बिट्स की रेंज दी गई है। हमारा कार्य उस रेंज में अनसेट बिट्स (0) की संख्या गिनना है।

उदाहरण

इनपुट: n = 50, प्रारंभिक पता = 2, अंतिम पता = 5
आउटपुट: 2

रेंज 2 से 5 में '2' अनसेट बिट्स हैं।

एल्गोरिदम

  1. bin() का उपयोग करके n को बाइनरी में बदलें।
  2. पहले दो वर्ण ('0b') हटाएं।
  3. स्ट्रिंग को उल्टा करें।
  4. इंडेक्स l-1 से r तक (r एक्सक्लूसिव) सभी अनसेट बिट '0' गिनें।

उदाहरण कोड

# एक रेंज में अनसेट बिट्स गिनने का फंक्शन
def countunsetbits(n, st, ed):
    # n को बाइनरी में बदलें
    bi = bin(n)
    # पहले दो वर्ण हटाएं
    bi = bi[2:]
    # स्ट्रिंग उल्टा करें
    bi = bi[-1::-1]
    # इंडेक्स st-1 से ed तक अनसेट बिट '0' गिनें
    print(len([bi[i] for i in range(st-1, ed) if bi[i]=='0']))

# ड्राइवर प्रोग्राम
if __name__ == "__main__":
    n = int(input("धनात्मक संख्या दर्ज करें ::>"))
    st = int(input("प्रारंभिक स्थिति दर्ज करें"))
    ed = int(input("अंतिम स्थिति दर्ज करें"))
    countunsetbits(n, st, ed)

आउटपुट

धनात्मक संख्या दर्ज करें ::> 50
प्रारंभिक स्थिति2
अंतिम स्थिति5
2
  1. पायथन प्रोग्राम: सरणी में इनवर्जन गिनें पायथन प्रोग्राम: सरणी में इनवर्जन गिनें

    इस लेख में हम दी गई समस्या के समाधान के बारे में जानेंगे। समस्या कथन हमें एक लिस्ट दी गई है, हमें आवश्यक इनवर्जन गिनने और प्रदर्शित करने हैं। इनवर्जन काउंट यह गिनकर प्राप्त किया जाता है कि सरणी को क्रमबद्ध करने के लिए कितने चरणों की आवश्यकता है। उदाहरण arr[j]): inv_count += 1 re

  1. - पायथन प्रोग्राम: 1 से n तक सभी नंबर्स में टोटल सेट बिट्स गिनना

    एक पॉजिटिव इंटीजर n दिया गया है, फिर हम इसे बाइनरी प्रतिनिधित्व में बदलते हैं और टोटल सेट बिट्स की संख्या गिनते हैं।उदाहरणInput: n=3 Output: 4एल्गोरिदमचरण 1: पॉजिटिव इंटीजर डेटा इनपुट करें। चरण 2: फिर इसे बाइनरी फॉर्म में कन्वर्ट करें। चरण 3: वेरिएबल s = 0 इनिशियलाइज़ करें। चरण 4: हर एलिमेंट को ट्रै

  1. - संख्या में कुल बिट्स गिनने के लिए पायथन प्रोग्राम

    समस्या विवरण सबसे पहले हम एक संख्या इनपुट करते हैं फिर bin() फंक्शन का उपयोग करके इस संख्या को बाइनरी में बदलते हैं और अगला आउटपुट स्ट्रिंग के पहले दो वर्ण 0b को हटाते हैं, फिर बाइनरी स्ट्रिंग की लंबाई की गणना करते हैं। उदाहरण इनपुट: 200 आउटपुट: 8 व्याख्या 200 का बाइनरी प्रतिनिधित्व 11001000 है