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

जटिल संख्याओं के लिए पायथन कार्यक्रम

धनात्मक संख्या के हमेशा दो वास्तविक मूल होते हैं। उदाहरण के लिए, यदि x2 25 है, तो x ±5 है। हालाँकि, यदि x2 -25 है, तो वास्तविक मूल मौजूद नहीं हैं। किसी भी ऋणात्मक संख्या का वर्गमूल उसके निरपेक्ष मान का वर्गमूल एक काल्पनिक इकाई j =√−1 से गुणा किया जाता है।

इसलिए √−25 =√25 𝑋−1 =√25 × √−1 =5j

एक सम्मिश्र संख्या में वास्तविक और काल्पनिक घटक होते हैं। इसे x+yj के रूप में दर्शाया जाता है। x और y दोनों वास्तविक संख्याएँ हैं। Y को काल्पनिक इकाई से गुणा करने पर सम्मिश्र संख्या का एक काल्पनिक भाग बनता है।

उदाहरण:3+2j, 10-5.5J, 9.55+2.3j, 5.11e-6+4j

पायथन में एक अंतर्निहित जटिल डेटा प्रकार है। एक सम्मिश्र संख्या वस्तु को शाब्दिक निरूपण द्वारा निम्नानुसार बनाया जा सकता है -

>>> x = 2+3j
>>> type(x)

सम्मिश्र संख्या वस्तु में दो विशेषताएँ होती हैं वास्तविक (वास्तविक घटक लौटाता है) और छवि (काल्पनिक इकाई को छोड़कर काल्पनिक घटक देता है j)

>>> x.real
2.0
>>> x.imag
3.0

इसमें conjugate() . भी है तरीका। एक सम्मिश्र संख्या के संयुग्म में विपरीत चिन्ह के साथ एक ही वास्तविक घटक और काल्पनिक घटक होता है। अत:2+3j का संयुग्म 2-3j होता है

>>> x.conjugate()
(2-3j)

पायथन में बिल्ट-इन कॉम्प्लेक्स () फ़ंक्शन भी है जो एक कॉम्प्लेक्स नंबर ऑब्जेक्ट देता है। फ़ंक्शन दो पैरामीटर लेता है, एक वास्तविक और काल्पनिक घटक के लिए प्रत्येक। वे किसी भी संख्यात्मक प्रकार (इंट, फ्लोट या कॉम्प्लेक्स) के हो सकते हैं

>>> complex(9,5)
(9+5j)
>>> complex(-6, -2.5)
(-6-2.5j)
>>> complex(1.5j, 2.5j)
(-2.5+1.5j)

यदि केवल एक पैरामीटर दिया जाता है तो इसे वास्तविक घटक माना जाता है, काल्पनिक घटक को शून्य माना जाता है।

>>> complex(15)
(15+0j)

फ़ंक्शन एक स्ट्रिंग को तर्क के रूप में भी ले सकता है बशर्ते इसमें संख्यात्मक प्रतिनिधित्व शामिल हो।

>>> complex('51')
(51+0j)
>>> complex('1.5')
(1.5+0j)

सम्मिश्र संख्याओं का जोड़ और घटाव पूर्णांकों या फ़्लोट्स के समान होता है। वास्तविक और काल्पनिक भागों को अलग-अलग जोड़ा / घटाया जाता है।

>>> a = 6+4j
>>> b = 3+6j
>>> a+b
(9+10j)
>>> a-b
(3-2j)

गुणन के लिए सम्मिश्र संख्या को द्विपद मानें और पहली संख्या के प्रत्येक पद को दूसरी संख्या के प्रत्येक पद से गुणा करें।

a = 6+4j
b = 3+2j
c = a*b
c = (6+4j)*(3+2j)
c = (18+12j+12j+8*-1)
c = 10+24j

पायथन कंसोल में परिणाम इसकी पुष्टि करता है -

>>> a = 6+4j
>>> b = 3+2j
>>> a*b
(10+24j)

सम्मिश्र संख्याओं का विभाजन इस प्रकार किया जाता है -

दो नंबर होने दें

ए =2+4j

बी =1-2j

और हम a/b की गणना करना चाहते हैं।

हर का संयुग्म प्राप्त करें जो कि 1+2j है

अंश और हर को संयुग्म . से गुणा करें हर का विभाजन का परिणाम प्राप्त करने के लिए

c = a/b
c = (2+4j)*(1+2j)/(1-2j)(1+2j)
c = (2+4j+4j+8*-1)/(1+2j-2j-4*-1)
c = (-6+8j)/5
c = -1.2+1.6j

निम्नलिखित पायथन कंसोल सत्र उपरोक्त उपचार की पुष्टि करता है।

>>> a = 2+4j
>>> b = 1-2j
>>> a/b
(-1.2+1.6j)

cmath मॉड्यूल

पायथन के मानक पुस्तकालय प्रक्रिया फ्लोटिंग पॉइंट नंबरों के गणित मॉड्यूल में परिभाषित गणितीय कार्य। जटिल संख्याओं के लिए, पायथन पुस्तकालय में cmath मॉड्यूल शामिल है।

सम्मिश्र संख्या z =x+yj एक कार्तीय निरूपण है। यह आंतरिक रूप से ध्रुवीय निर्देशांक में इसके मापांक r (जैसा कि बिल्ट-इन एब्स () फ़ंक्शन द्वारा लौटाया गया है) और चरण कोण Φ (फी के रूप में उच्चारित) के साथ दर्शाया गया है, जो कि रेडियन में वामावर्त कोण है, एक्स अक्ष और रेखा के बीच x को जोड़ने वाली रेखा के साथ। मूल। निम्नलिखित आरेख सम्मिश्र संख्या के ध्रुवीय निरूपण को दर्शाता है -

जटिल संख्याओं के लिए पायथन कार्यक्रम

cmath मॉड्यूल में कार्य कार्टेशियन प्रतिनिधित्व को ध्रुवीय प्रतिनिधित्व और इसके विपरीत में बदलने की अनुमति देते हैं।

ध्रुवीय () - यह फ़ंक्शन सम्मिश्र संख्या के कार्तीय संकेतन का ध्रुवीय निरूपण देता है। वापसी मूल्य मापांक और चरण से मिलकर बना एक टपल है।

>>> import cmath
>>> a = 2+4j
>>> cmath.polar(a)
(4.47213595499958, 1.1071487177940904)

ध्यान दें कि मापांक abs() फ़ंक्शन द्वारा लौटाया जाता है

>>> abs(a)
4.47213595499958

चरण () − यह फ़ंक्शन a . को जोड़ने वाले x अक्ष और खंड के बीच वामावर्त कोण लौटाता है उत्पत्ति के साथ। कोण रेडियन में दर्शाया गया है और π और -π के बीच है

>>> cmath.phase(a)
1.1071487177940904
z = x+yj
Φ

रेक्ट () - यह फ़ंक्शन ध्रुवीय रूप में अर्थात मापांक और चरण में दर्शाए गए सम्मिश्र संख्या का कार्तीय निरूपण देता है

>>> cmath.rect(4.47213595499958, 1.1071487177940904)
(2.0000000000000004+4j)

cmath मॉड्यूल में गणित मॉड्यूल में परिभाषित सभी गणितीय कार्यों के लिए विकल्प हैं। नीचे बताए अनुसार त्रिकोणमितीय और लघुगणकीय कार्य हैं -

cmath.sin() - यह फ़ंक्शन रेडियन में दर्शाए गए चरण कोण के लिए साइन त्रिकोणमितीय अनुपात लौटाता है।

>>> import cmath
>>> a = 2+4j
>>> p = cmath.phase(a)
>>> cmath.sin(p)
(0.8944271909999159+0j)

इसी तरह, अन्य अनुपातों cos(), tan(), asin(), acos() और atan() के लिए फ़ंक्शन को cmath मॉड्यूल में परिभाषित किया गया है।

cmath.exp() - math.exp() के समान, यह फ़ंक्शन वापस लौटता है जहां x एक सम्मिश्र संख्या है और e 2.71828

है
>>> cmath.exp(a)
(-1.1312043837568135+2.4717266720048188j)

cmath.log10() - यह फ़ंक्शन 10 के रूप में आधार लेते हुए जटिल संख्या के लॉग मान की गणना करता है

>>> a = 1+2j
>>> cmath.log10(a)
(0.3494850021680094+0.480828578784234j)

cmath.sqrt() - यह फ़ंक्शन सम्मिश्र संख्या का वर्गमूल लौटाता है।

>>> cmath.sqrt(a)
(1.272019649514069+0.7861513777574233j)

इस लेख में हमने पायथन के जटिल संख्या डेटा प्रकार की महत्वपूर्ण विशेषताओं और इस पर अंकगणितीय संचालन कैसे किया जा सकता है, इसके बारे में सीखा। हमने cmath मॉड्यूल में परिभाषित विभिन्न कार्यों की भी खोज की।


  1. साधारण रुचि के लिए पायथन कार्यक्रम

    इस लेख में, हम Python 3.x में साधारण ब्याज की गणना के बारे में जानेंगे। या पहले। साधारण ब्याज की गणना दैनिक ब्याज दर को मूल राशि से भुगतानों के बीच बीतने वाले दिनों की संख्या से गुणा करके की जाती है। गणितीय रूप से, Simple Interest = (P x T x R)/100 Where, P is the principal amount T is the time a

  1. चयन क्रम के लिए पायथन कार्यक्रम

    इस लेख में, हम Python 3.x में सिलेक्शन सॉर्ट और उसके कार्यान्वयन के बारे में जानेंगे। या पहले। चयन क्रम . में एल्गोरिथम, एक सरणी को पुनरावर्ती रूप से अनसोल्ड भाग से न्यूनतम तत्व ढूंढकर और शुरुआत में सम्मिलित करके सॉर्ट किया जाता है। किसी दिए गए सरणी पर चयन क्रम के निष्पादन के दौरान दो उप-सरणी बनते

  1. दो से अधिक (या सरणी) संख्याओं के जीसीडी के लिए पायथन कार्यक्रम

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे - समस्या कथन - हमें संख्या की एक सरणी दी जाएगी और हमें सबसे बड़ा सामान्य भाजक खोजने की जरूरत है। यदि हमें दो से अधिक संख्याओं का gcd ज्ञात करने की आवश्यकता है, तो gcd तर्क के रूप में प्रदान की गई सभी संख्याओं के लिए सामान्य अभाज्य