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

Python में गोल पार्सर इंटरप्रिटेशन कमांड खोजें

मान लीजिए हमारे पास एक गोल पार्सर है जो दी गई स्ट्रिंग कमांड की व्याख्या कर सकता है। एक कमांड में निम्नलिखित होते हैं:

  • एक वर्णमाला "G"
  • ओपनिंग और क्लोजिंग पैरेंथेसिस "()"
  • और/या "(al)" कुछ क्रम में

हमारा गोल पार्सर "G" को स्ट्रिंग "G" के रूप में, "()" को "o" के रूप में, और "(al)" को स्ट्रिंग "al" के रूप में व्याख्या करेगा। अंत में व्याख्या की गई स्ट्रिंग्स को मूल क्रम में जोड़ दिया जाता है। इसलिए यदि हमारे पास स्ट्रिंग कमांड है, तो हमें कमांड की गोल पार्सर की व्याख्या ढूंढनी है।

इसलिए, यदि इनपुट है: command = "G()()()(al)(al)", तो आउटपुट "Goooalal" होगा।

हल करने के चरण

  1. s := खाली स्ट्रिंग
  2. i को 0 से कमांड के आकार - 1 तक के लिए:
    • यदि command[i] "(" के समान नहीं है और ")" के समान नहीं है, तो s := s + command[i]
    • यदि command[i] "(" के समान है और command[i+1] ")" के समान है और i+1 < len(command), तो s := s + 'o'
    • यदि command[i] "(" के समान है, तो अगले इटरेशन पर जाएं
    • यदि command[i] ")" के समान है, तो अगले इटरेशन पर जाएं
  3. s वापस करें

उदाहरण (Python)

def solve(command):
    s = ""
    for i in range(len(command)):
        if command[i] != "(" and command[i] != ")":
            s += command[i]
        if command[i] == "(" and command[i+1] == ")" and i+1 < len(command):
            s += 'o'
        if command[i] == "(":
            continue
        if command[i] == ")":
            continue
    return s

command = "G()()()(al)(al)"
print(solve(command))

इनपुट

"G()()()(al)(al)"

आउटपुट

Goooalal
  1. - पायथन में बड़ी संख्या का फैक्टोरियल खोजने का प्रोग्राम

    मान लीजिए हमारे पास एक बड़ी संख्या n है। हमें इसका फैक्टोरियल ज्ञात करना है। कुछ अन्य भाषाओं में बड़ी संख्या का फैक्टोरियल ज्ञात करना बहुत कठिन होता है क्योंकि यह पूर्णांक डेटा प्रकारों की सीमा से अधिक हो सकता है। लेकिन पायथन में यह स्वचालित रूप से लंबाई का पता लगाता है और डिफ़ॉल्ट रूप से संख्या को

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

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

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

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