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

पायथन में अंग्रेजी शब्दों का पूर्णांक


मान लीजिए कि हमारे पास एक संख्या है। संख्या 0 से 231 - 1 के बीच कुछ भी हो सकती है। हमें संख्या को शब्दों में बदलना है। तो अगर संख्या 512 की तरह है, तो परिणाम पांच सौ बारह होगा।

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

  • कुछ सूचियों को परिभाषित करें जैसे कि less_than_20, इसमें एक से उन्नीस तक के सभी शब्द शामिल होंगे

  • दसियों, बीस, तीस और इसी तरह नब्बे तक रखने के लिए दसियों की तरह एक और सरणी

  • हज़ारों के लिए एक और सरणी, हज़ार, मिलियन और अरब रखने के लिए

  • हेल्पर () नामक एक फ़ंक्शन को परिभाषित करें, इसमें n लगेगा

  • यदि n 0 है, तो रिक्त स्ट्रिंग लौटाएं

  • अन्यथा जब n <20, तब कम_थान_20[n] + रिक्त स्थान

    return लौटाएं
  • अन्यथा जब n <100, तब दहाई [n/10] + रिक्त स्थान + सहायक (n mod 10)

    लौटाएं
  • अन्यथा कम_थान_20[n/100] + "सौ" + सहायक (n mod 100)

    लौटाएं
  • मुख्य विधि से, निम्न कार्य करें

  • अगर संख्या 0 है, तो "शून्य" लौटाएं

  • उत्तर:=खाली स्ट्रिंग, मैं:=0

  • जबकि संख्या> 0

    • अगर num mod 1000 0 नहीं है, तो

      • उत्तर:=सहायक (संख्या मॉड 1000) + हजारों [i] + रिक्त स्थान + उत्तर

      • संख्या:=संख्या / 1000

  • वापसी उत्तर

उदाहरण

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

class Solution(object):
   less_than_20 = ["", "One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine", "Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", "Seventeen", "Eighteen",
"Nineteen"]
   tens = ["","Ten", "Twenty", "Thirty", "Forty", "Fifty", "Sixty", "Seventy", "Eighty", "Ninety"]
   thousands = ["", "Thousand", "Million", "Billion"]
   def numberToWords(self, num):
      if num == 0:
         return "Zero"
      ans = ""
      i = 0
      while num > 0:
         if num % 1000 != 0:
            ans = self.helper(num % 1000) + Solution.thousands[i] + " " + ans
         i += 1
         num //= 1000
      return ans.strip()
   def helper(self, n):
      if n == 0:
         return ""
      elif n < 20:
         return Solution.less_than_20[n] + " "
      elif n < 100:
         return Solution.tens[n//10] + " " + self.helper(n % 10)
      else:
         return Solution.less_than_20[n // 100] + " Hundred " + self.helper(n % 100)

ob = Solution()
print(ob.numberToWords(512))
print(ob.numberToWords(7835271))

इनपुट

512
7835271

आउटपुट

Five Hundred Twelve
Seven Million Eight Hundred Thirty Five Thousand Two Hundred Seventy One

  1. पायथन में पूर्णांक के लिए बाइनरी सूची

    हम विभिन्न दृष्टिकोणों का उपयोग करके पायथन में एक बाइनरी संख्या का प्रतिनिधित्व करने वाले 0s और 1s की सूची को दशमलव संख्या में बदल सकते हैं। नीचे दिए गए उदाहरणों में हम int() विधि के साथ-साथ बिटवाइज़ लेफ्ट शिफ्ट ऑपरेटर का उपयोग करते हैं। int का उपयोग करना () int() विधि दो तर्कों में लेती है और नीचे

  1. पायथन में दिए गए स्ट्रिंग में शब्दों को उल्टा करें

    हमें एक स्ट्रिंग दी गई है, और हमारा लक्ष्य उन सभी शब्दों को उलटना है जो स्ट्रिंग में मौजूद हैं। हम आउटपुट प्राप्त करने के लिए स्प्लिट मेथड और रिवर्स फंक्शन का उपयोग कर सकते हैं। आइए कुछ नमूना परीक्षण मामलों को देखें। Input: string = "I am a python programmer" Output: programmer python a am

  1. पायथन में बिन ()

    बिन () फ़ंक्शन एक दशमलव को बाइनरी में परिवर्तित करता है। परिवर्तित किए जाने वाले पैरामीटर के रूप में आप धनात्मक या ऋणात्मक पूर्णांक का उपयोग कर सकते हैं। सिंटैक्स नीचे फ़ंक्शन का सिंटैक्स है। bin(n) Parameters : an integer to convert Return Value : A binary string of an integer or int object. Excep