पायथन फैक्टोरियल की गणना कैसे करें
आप अपने हाई स्कूल मैथ क्लास से "फैक्टोरियल" शब्द याद कर सकते हैं। कैलकुलेटर के बिना उनकी गणना करना बहुत आसान नहीं है। कौन 10 का फैक्टोरियल मैन्युअली 1x2x3x4 और इसी तरह गुणा करके गणना करना चाहता है?
पायथन में फैक्टोरियल की गणना करने के कुछ तरीके हैं। इस गाइड में, हम तीन दृष्टिकोणों का उपयोग करके फैक्टोरियल की गणना करने के बारे में बात करेंगे: math.factorial मेथड, एक रिकर्सिव फ़ंक्शन, और एक इटरेटिव मेथड।
बिना किसी देरी के, शुरू करते हैं!
फैक्टोरियल क्या है?
एक फैक्टोरियल एक और संख्या के बीच सभी पूर्ण संख्याओं का गुणनफल है।
गणितीय सूत्र के रूप में व्यक्त, एक फैक्टोरियल है:
n! = 1x2x3...n
विस्मयादिबोधक चिह्न इंगित करता है कि हम एक फैक्टोरियल की गणना कर रहे हैं। "n" वह संख्या है जिसका फैक्टोरियल हम गणना कर रहे हैं। हमारी गणना तब रुकती है जब "n" से कम या बराबर सभी पूर्णांकों को एक साथ गुणा किया जाता है।
नेगेटिव संख्याओं पर फैक्टोरियल की गणना नहीं की जा सकती।
पायथन फैक्टोरियल: math.factorial()
आप पायथन मैथ मॉड्यूल का उपयोग करके एक फैक्टोरियल की गणना कर सकते हैं। यह लाइब्रेरी कई मेथड प्रदान करती है जिनका उपयोग आप गणितीय फ़ंक्शन करने के लिए कर सकते हैं। उदाहरण के लिए, आप एक रैंडम संख्या उत्पन्न करने के लिए मैथ लाइब्रेरी का उपयोग कर सकते हैं।
math.factorial() मेथड एक संख्या स्वीकार करता है और उसका फैक्टोरियल गणना करता है। इस मेथड का उपयोग करने से पहले, हमें अपने कोड में मैथ लाइब्रेरी आयात करने की आवश्यकता है:
import math
अब, आइए 17 का फैक्टोरियल खोजने के लिए एक पायथन प्रोग्राम लिखते हैं:
number = 17
fact = math.factorial(number)
print("The factorial of {} is {}.".format(number, str(fact)))
हमारा कोड लौटाता है: The factorial of 17 is 355687428096000।
factorial() मेथड एक संख्या का फैक्टोरियल लौटाता है।
हम उस संख्या को कंसोल पर संदेश के साथ प्रिंट करते हैं: "The factorial of 17 is "। हम अपने नंबर को अपने स्ट्रिंग के अंदर जोड़ने के लिए format() स्टेटमेंट का उपयोग करते हैं।
पायथन फैक्टोरियल: इटरेटिव दृष्टिकोण
फैक्टोरियल की गणना बाहरी पायथन लाइब्रेरी के उपयोग के बिना की जा सकती है। आप एक साधारण for स्टेटमेंट का उपयोग करके एक फैक्टोरियल की गणना कर सकते हैं जो एक रेंज में सभी संख्याओं का गुणनफल एक साथ गणना करता है।
आइए दो वेरिएबल घोषित करके शुरू करते हैं:
number = 17 fact = 1
पहला वेरिएबल उस संख्या से मेल खाता है जिसका फैक्टोरियल हम गणना करना चाहते हैं। दूसरा वेरिएबल फैक्टोरियल के कुल को ट्रैक करेगा।
अगला, हमें एक for लूप बनाने की आवश्यकता है जो एक और हमारी संख्या की रेंज में हर संख्या के माध्यम से लूप करता है:
for num in range(1, number+1):
fact = fact * num
print("The factorial of {} is {}.".format(number, str(fact)))
for लूप एक संख्या का फैक्टोरियल गणना करता है। प्रिंट स्टेटमेंट हमें हमारे for लूप में गणना किए गए कुल फैक्टोरियल को दिखाता है।
हमारा कोड लौटाता है: The factorial of 17 is 355687428096000।
यह मेथड math.factorial() मेथड की तुलना में थोड़ा कम कुशल है। ऐसा इसलिए है क्योंकि math.factorial() मेथड C-टाइप इम्प्लीमेंटेशन मेथड का उपयोग करके लागू किया गया है। यह कई प्रदर्शन लाभ प्रदान करता है।
यदि आप बाहरी लाइब्रेरी का उपयोग किए बिना किसी संख्या का फैक्टोरियल गणना करना चाहते हैं, तो इटरेटिव दृष्टिकोण उपयोग करने के लिए एक उपयोगी मेथड है।
पायथन फैक्टोरियल: रिकर्सिव दृष्टिकोण
एक फैक्टोरियल की गणना एक रिकर्सिव फ़ंक्शन का उपयोग करके की जा सकती है। एक रिकर्सिव फ़ंक्शन वह है जो किसी विशेष समस्या को हल करने के लिए स्वयं को कॉल करता है।
रिकर्सिव फ़ंक्शन्स का उपयोग अक्सर गणितीय अनुक्रमों की गणना करने या गणितीय समस्याओं को हल करने के लिए किया जाता है। ऐसा इसलिए है क्योंकि आमतौर पर एक परिभाषित सूत्र होता है जिसका उपयोग किसी समस्या के उत्तर की गणना करने के लिए किया जाता है।
एक पायथन फ़ाइल खोलें और निम्न फ़ंक्शन पेस्ट करें:
def calculate_factorial(number):
if number == 1:
return number
else:
return number * calculate_factorial(number - 1)
यह फ़ंक्शन रिकर्सिवली एक संख्या का फैक्टोरियल गणना करता है। अगला, हमें एक मेन प्रोग्राम लिखने की आवश्यकता है जो इस फ़ंक्शन का उपयोग करता है:
number = 17
fact = calculate_factorial(number)
print("The factorial of {} is {}.".format(number, str(fact)))
हमने दो वेरिएबल घोषित किए हैं: number और fact। Number वह संख्या है जिसका फैक्टोरियल हम गणना करना चाहते हैं। "fact" को calculate_factorial() फ़ंक्शन के परिणाम को असाइन किया गया है जो हमारे फैक्टोरियल की गणना करता है। अगला, हम उत्तर को कंसोल पर प्रिंट करते हैं।
हमारा कोड लौटाता है: The factorial of 17 is 355687428096000।
निष्कर्ष
फैक्टोरियल गणित में आमतौर पर उपयोग किए जाते हैं। वे एक से दूसरी संख्या तक सभी पूर्ण संख्याओं का गुणनफल हैं जब उन्हें एक साथ गुणा किया जाता है।
आप पायथन में math.factorial(), एक इटरेटिव मेथड, या एक रिकर्सिव फ़ंक्शन का उपयोग करके फैक्टोरियल की गणना कर सकते हैं। इटरेटिव और रिकर्सिव दृष्टिकोण को तथाकथित "वेनिला पायथन" में लिखा जा सकता है। इसका अर्थ है कि आपको इन दृष्टिकोणों के साथ फैक्टोरियल की गणना करने के लिए किसी भी लाइब्रेरी को आयात करने की आवश्यकता नहीं है।
अब आप एक विशेषज्ञ की तरह पायथन में फैक्टोरियल की गणना करने के लिए तैयार हैं!