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

पायथन रेशनल नंबर्स (Fractions मॉड्यूल)


कोई भी संख्या जिसे p/q के रूप में भागफल या भिन्न के रूप में व्यक्त किया जा सकता है, उसे रेशनल नंबर कहा जाता है। पायथन लाइब्रेरी का fractions मॉड्यूल रेशनल नंबर अंकगणित के लिए कार्यक्षमता प्रदान करता है।

यह मॉड्यूल एक Fraction क्लास को परिभाषित करता है। इसके ऑब्जेक्ट को विभिन्न तरीकों से बनाया जा सकता है:

Fraction(num, denom)

Fraction कंस्ट्रक्टर का पहला संस्करण न्यूमेरेटर और डिनॉमिनेटर के लिए दो पैरामीटर्स प्राप्त करता है। डिफ़ॉल्ट न्यूमेरेटर 0 है और डिफ़ॉल्ट डिनॉमिनेटर 1 है। डिनॉमिनेटर का मान 0 होने पर ZeroDivisionError थ्रो होता है।

>>> from fractions import Fraction
>>> n1 = Fraction(2, 5)
>>> n1
Fraction(2, 5)
>>> n2 = Fraction(6, 15)
>>> n2
Fraction(2, 5)
>>> n3 = Fraction(10, 1)
>>> n3
Fraction(10, 1)
>>> n3 = Fraction(10)
>>> n3
Fraction(10, 1)

ध्यान दें कि न्यूमेरेटर और डिनॉमिनेटर पैरामीटर्स को सामान्य गुणनखंडों से विभाजित करके न्यूनतम मानों तक कम किया जाता है।

Fraction कंस्ट्रक्टर स्ट्रिंग पैरामीटर भी प्राप्त कर सकता है बशर्ते उसमें वैध न्यूमेरिक प्रतिनिधित्व हो।

>>> n1 = Fraction('5')
>>> n1
Fraction(5, 1)
>>> n2 = Fraction('4/7')
>>> n2
Fraction(4, 7)
>>> n3 = Fraction('0.25')
>>> n3
Fraction(1, 4)
>>> n4 = Fraction('1.23E4')
>>> n4
Fraction(12300, 1)

एक फ्लोटिंग पॉइंट नंबर भी कंस्ट्रक्टर का पैरामीटर हो सकता है। हालांकि, शुद्ध बाइनरी फॉर्म में फ्लोट के प्रतिनिधित्व के कारण, परिणामी Fraction ऑब्जेक्ट के न्यूमेरेटर और डिनॉमिनेटर का भागफल सटीक नहीं हो सकता। दूसरी ओर, Decimal क्लास का एक ऑब्जेक्ट पैरामीटर के रूप में भी एक Fraction ऑब्जेक्ट उत्पन्न करता है।

>>> from fractions import Fraction
>>> from decimal import Decimal
>>> n1 = Fraction(2.1)
>>> n1
Fraction(4728779608739021, 2251799813685248)
>>> n2 = Fraction(Decimal('2.1'))
>>> n2
Fraction(21, 10)

Fraction ऑब्जेक्ट्स के साथ सभी अंकगणितीय ऑपरेशंस अनुमत हैं।

>>> n1 = Fraction(2, 3)
>>> n2 = Fraction(1, 2)
>>> n1 + n2
Fraction(7, 6)
>>> n1 - n2
Fraction(1, 6)
>>> n1 * n2
Fraction(1, 3)
>>> n1 / n2
Fraction(4, 3)

सिर्फ यह याद दिलाने के लिए कि भागफल रूप में रेशनल नंबर अंकगणित कैसे किया जाता है:

पायथन रेशनल नंबर्स (Fractions मॉड्यूल)

Fraction ऑब्जेक्ट के दो एट्रिब्यूट्स हैं, numerator और denominator जिन्हें स्वतंत्र रूप से एक्सेस किया जा सकता है।

>>> n1 = Fraction(2, 3)
>>> n1.numerator
2
>>> n1.denominator
3

Fraction क्लास में फ्लोर वैल्यू (भागफल से छोटा सबसे बड़ा इंटीजर) और सील वैल्यू (भागफल से बड़ा सबसे छोटा इंटीजर) खोजने के लिए निम्नलिखित उपयोगी मेथड्स हैं:

>>> n1 = Fraction(355, 113)
>>> n1.__floor__()
3
>>> n1.__ceil__()
4

एक और क्लास मेथड limit_denominator() वह निकटतम भिन्न लौटाता है जिसका डिनॉमिनेटर निर्दिष्ट मान से अधिकतम बराबर होता है।

>>> Fraction('2.71828').limit_denominator(400)
Fraction(1071, 394)

इस आर्टिकल में पायथन स्टैंडर्ड लाइब्रेरी के fractions मॉड्यूल की विशेषताओं और फंक्शंस पर चर्चा की गई है।


  1. - समान परिमेय संख्याएं C++ में

    मान लीजिए हमारे पास दो स्ट्रिंग्स S और T हैं, जिनमें से प्रत्येक एक धनात्मक परिमेय संख्या को दर्शाती है। हमें जांचना है कि क्या वे एक ही संख्या को दर्शाते हैं। स्ट्रिंग्स कोष्ठक का उपयोग करके परिमेय संख्या के आवर्ती भाग को दर्शा सकती हैं। हम जानते हैं कि परिमेय संख्याओं को तीन भागों तक का उपयोग करक

  1. - पायथन में reduce फंक्शन का उपयोग करके परिमेय संख्याओं का गुणनफल खोजने का प्रोग्राम

    मान लीजिए हमारे पास परिमेय संख्याओं की एक सूची है। हमें reduce फंक्शन का उपयोग करके उनका गुणनफल ज्ञात करना है। reduce() फंक्शन दो आर्गुमेंट वाले फंक्शन को ऑब्जेक्ट्स की सूची पर बाएं से दाएं संचयी रूप से लागू करता है।उदाहरण के लिए, यदि इनपुट fractions = [(5,3),(2,8),(6,9),(5,12),(7,2)] है, तो आउटपुट

  1. Excel में संख्याओं को भिन्न (Fractions) के रूप में कैसे प्रदर्शित करें Excel में संख्याओं को भिन्न (Fractions) के रूप में कैसे प्रदर्शित करें

    क्या आपने अपनी Excel शीट में एक भिन्न दर्ज करने की कोशिश की है, लेकिन जब आप Enter दबाते हैं, तो यह एक क्रमिक, पूर्ण, या दशमलव संख्या में बदल जाता है, और आपको कोई सुराग नहीं है कि क्या करना है? Microsoft Excel में, आप Fraction फॉर्मेट का उपयोग करके किसी संख्या को भिन्न में बदल सकते हैं। Excel में Fr