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

Python में पूर्णांक को अंग्रेजी शब्दों में बदलें


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

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

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

  • tens जैसी एक और सरणी दस, बीस, तीस और इसी तरह नब्बे तक रखने के लिए

  • हजार, लाख और अरब रखने के लिए thousands के लिए एक और सरणी

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

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

  • अन्यथा जब n < 20, तो less_than_20[n] + खाली स्थान लौटाएं

  • अन्यथा जब n < 100, तो tens[n/10] + खाली स्थान + helper(n mod 10) लौटाएं

  • अन्यथा less_than_20[n/100] + "Hundred" + helper(n mod 100) लौटाएं

  • मुख्य विधि से, निम्नलिखित करें

  • यदि num 0 है, तो "Zero" लौटाएं

  • ans := खाली स्ट्रिंग, i := 0

  • जब तक num > 0

    • यदि num mod 1000 0 नहीं है, तो

      • ans := helper(num mod 1000) + thousands[i] + खाली स्थान + ans

      • num := num / 1000

  • ans लौटाएं

उदाहरण

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

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. - पायथन में बाइनरी लिस्ट को इंटीजर में बदलना

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

  1. - Python में दी गई स्ट्रिंग में शब्दों को उल्टा करें

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

  1. - पायथन में bin() फ़ंक्शन

    bin() फ़ंक्शन दशमलव को बाइनरी में बदलता है। आप परिवर्तित किए जाने वाले पैरामीटर के रूप में धनात्मक या ऋणात्मक पूर्णांक का उपयोग कर सकते हैं। सिंटैक्स नीचे फ़ंक्शन का सिंटैक्स दिया गया है। bin(n) पैरामीटर्स: परिवर्तित करने के लिए एक पूर्णांक वापसी मान: एक पूर्णांक या int ऑब्जेक्ट का बाइनरी स्ट्रिंग