सबरूटीन-फंक्शन
एक फंक्शन एक सबरूटीन है जो एक परिणाम देता है (संख्या, वर्ण स्ट्रिंग, आदि)।< / डिव>
कल्पना कीजिए कि आपने एक ऑनलाइन स्टोर से उत्पाद का ऑर्डर दिया है। प्रोग्रामिंग के दृष्टिकोण से, आपने कुछ सबरूटीन कहा है, और एक प्रक्रिया के विपरीत, इस सबरूटीन को एक परिणाम देना चाहिए - आपके द्वारा ऑर्डर किए गए उत्पाद को डिलीवर करना चाहिए। इन सबरूटीन्स को फ़ंक्शंस कहा जाता है।
एक फ़ंक्शन को एक प्रक्रिया के समान ही स्वरूपित किया जाता है। प्रक्रिया से एकमात्र अंतर एक विशेष ऑपरेटर return,
की उपस्थिति है, जिसके बाद मुख्य प्रोग्राम में लौटाया जाने वाला मान लिखा जाता है।
एक फ़ंक्शन जो दो पूर्णांकों का अंकगणितीय माध्य लौटाता है, वह इस प्रकार दिखाई देगा:
<पूर्व>
डेफ औसत (ए, बी):
औसत = (ए + बी) / 2
वापसी औसत प्री>
यह समझना बाकी है कि इस फ़ंक्शन को मुख्य कार्यक्रम में कैसे कॉल करें:
आपको किसी फ़ंक्शन को प्रक्रिया के समान नहीं कॉल करना चाहिए:
<पूर्व>
औसत (10, 5)
फ़ंक्शन द्वारा लौटाया गया मान खो जाएगा। यह ऐसा है जैसे ऑनलाइन स्टोर से सामान किसी को दिया नहीं गया, बल्कि फेंक दिया गया। यह संभावना नहीं है कि ग्राहक इसे पसंद करेंगे।
परिणाम को एक चर में सहेजना (या इसे स्क्रीन पर प्रिंट करना) अधिक सही है:
<पूर्व>
ए = औसत (10, 5) प्री>
<पूर्व>
प्रिंट (औसत (10, 5))
पूर्व>
याद रखने की जरूरत है!
<ओल>
एक फ़ंक्शन सबरूटीन को एक प्रक्रिया के समान ही स्वरूपित किया जाता है।
कार्यक्रम में उस स्थान पर फ़ंक्शन को कॉल किया जाता है जहां आप मूल्य डालेंगे। उदाहरण के लिए, प्रिंट () स्टेटमेंट या अंकगणितीय अभिव्यक्ति के पैरामीटर के रूप में।
ओल>
Problem
एक ऐसा फ़ंक्शन लिखें जो प्राकृतिक संख्या के अंकों के योग की गणना करता है।
इस फ़ंक्शन का उपयोग करते हुए, एक प्रोग्राम लिखें कि 5 इनपुट प्राकृतिक संख्याओं में से अंकों के अधिकतम योग के साथ संख्या का पता लगाएं। यदि ऐसी कई संख्याएँ हैं, तो बड़ी संख्या का उत्पादन करें।
उदाहरण
<टेबल क्लास = "टेबल-बॉर्डर्ड टेबल-लिस्ट-टेस्ट टेबल-एसएम टेबल-स्ट्राइप्ड">
<सिर>
<वें>#वें>
<वें>इनपुटवें>
<वें>आउटपुटवें>
बात>
<शरीर>
1 |
15
234
11
9
111112 |
234 |
टेबल>