PERL/C3/Sample-PERL-program/Hindi

From Script | Spoken-Tutorial
Revision as of 17:14, 6 June 2016 by Shruti arya (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Time
Narration
00:01 'Sample PERL program' पर स्पोकन ट्यूटोरियल में आपका स्वागत है।
00:06 इस ट्यूटोरियल में हम अभी तक कवर किये हुए मुख्य विषयों को सैंपल पर्ल प्रोग्राम में सम्मिलित करना सीखेंगे।
00:14 इस ट्यूटोरियल को रिकॉर्ड करने के लिए मैं उपयोग कर रही हूँ:
  • 'उबन्टु लिनक्स 12.04' ऑपरेटिंग सिस्टम
  • 'Perl 5.14.2' और
  • 'gedit' टेक्स्ट एडिटर
00:25 आप अपनी पसंद का कोई भी टेक्स्ट एडिटर उपयोग कर सकते हैं।
00:29 पूर्व आवश्यकताओं में, आपको 'पर्ल' प्रोग्रामिंग की कार्यकारी जानकारी होनी चाहिए।
00:34 यदि नही तो हमारी वेबसाइट पर सम्बंधित 'पर्ल' स्पोकन ट्यूटोरियल्स को देखें।
00:39 सैंपल पर्ल प्रोग्राम एक क्षेत्र के वेदर फोरकास्ट यानि मौसम के पूर्वानुमान की कई रिपोर्ट्स का आउटपुट देगी।


00:46 'Weather dot pm' एक मॉड्यूल फाइल है जो इस प्रोग्राम के वांछित डेटा को रखने के लिए एक जटिल डेटा स्ट्रक्चर रखती] है।
00:54 यह रिपोर्ट बनाने के लिए अनेक फंक्शन्स भी रखती है।
00:59 'Weather underscore report dot pl' वो 'पर्ल' प्रोग्राम है जो वांछित आउटपुट देने के लिए इस मॉड्यूल फाइल को उपयोग कराता है।
01:08 हमारी वेबसाइट पर इस वीडिओ के नीचे समान कोड फाइल्स उपलब्ध हैं।
01:13 कोड फाइल लिंक में दी गयी फाइल्स को डाउनलोड और अनज़िप करें।
01:18 अब अपना सैंपल पर्ल प्रोग्राम 'Weather dot pm' देखते हैं।
01:24 इस प्रोग्राम में कोड का ब्लॉक 'namespace Weather' में है।
01:29 'पर्ल', 'पैकेज' कीवर्ड प्रयोग करके 'namespace' कार्यान्वित करता है।
01:34 'BEGIN' ब्लॉक 'main प्रोग्राम' से पहले कम्पाइल और निष्पादित किया जाता है।
01:40 'Export', यूज़र के 'namespace' पर 'मॉड्यूल्स' के वेरिएबल्स और फंक्शन्स को एक्सपोर्ट करने की अनुमति देता है।
01:48 'At the rate EXPORT' और 'at the rate EXPORT underscore OK' 'एक्सपोर्ट' ऑपरेशन के दौरान उपयोग हुए दो मेन वेरिएबल्स हैं।
01:57 'At the rate EXPORT', 'सबरूटीन्स' की सूची और 'मॉड्यूल' के वेरिएबल्स रखता है।
02:03 ये कॉलर 'namespace' में एक्सपोर्ट किये जायेंगे।
02:07 'At the rate EXPORT underscore OK' आवश्यकता के अनुसार सिम्बल्स को एक्सपोर्ट करता है।
02:14 यहाँ मैंने मौसम की रिपोर्ट का आवश्यक डेटा रखने वाले कॉम्प्लेक्स डेटा-स्ट्रक्टर्स बनाने के लिए 'references' उपयोग किये हैं।
02:24 '$weather_report' 'हैश रेफरेन्स' है। 'place' और 'nstate' स्केलर वैल्यूज़ रखते हैं।
02:32 'weekly', 'हैश रेफरेन्स' का 'हैश' है।
02:37 * सप्ताह का प्रत्येक दिन चार 'कीज़' रखता है -
 'max underscore temp', 
 'min underscore temp', 
 'sunrise',
 'sunset'.
02:48 'record underscore time' दो 'इंडेक्स' वैल्यूज़ के साथ एक 'array reference' है।
02:54 मेरे पास विभिन्न विकल्पों के मौसम की रिपोर्ट को दिखाने के लिय कुछ 'सबरूटीन्स' हैं।

एक-एक करके देखते हैं।

03:01 यह 'फंक्शन' 'हैडर' जानकारी जैसे रिपोर्ट, प्लेस, स्टेट और मौजूदा डेट के हैडर को प्रिंट करता है।
03:10 अब, अगला फंक्शन 'display underscore daily underscore report' देखते हैं।
03:16 यह 'फंक्शन' वीकडे इनपुट के अनुसार स्क्रीन पर दैनिक रिपोर्ट प्रिंट करता है।
03:22 हम 'शिफ्ट' फंक्शन प्रयोग करके 'सबरूटीन' में पास किये हुए पैरामीटर को पुनः प्राप्त करते हैं।
03:27 मैंने पैरामीटर वैल्यू के पूर्वगामी और अनुगामी स्पेसेस को हटाने के लिए 'trim()' फंक्शन उपयोग किया है।
03:34 यहाँ 'trim()' फंक्शन के लिए कोड है।
03:37 'Lc()' फंक्शन दिए गए इनपुट का लोअरकेस वर्जन रिटर्न करता है।
03:42 यह केस-सेंस्टिविटी को दूर करने में उपयोग होता है।
03:45 'week day'- जो मेन प्रोग्राम से पैरामीटर की तरह पास होता है वह लोकल वेरिएबल 'dollar week underscore day' को असाइन किया जाता है।
03:55 निम्न 'प्रिंट स्टेटमेंटs' निर्दिष्ट वीक डे से सम्बंधित डेटा को प्रिंट करेगा।
04:01 हम '$weather underscore report' में एक वैल्यू को 'डीरेफरेन्स' करने के लिए 'एरो ऑपरेटर' प्रयोग कर रहे हैं।
04:09 जब 'रेफरेन्सेस' के साथ कार्य करते समय हमें उन 'डेटा टाइप' को समझना है जो हम 'डीरेफरेन्स' कर रहे हैं।
04:15 यदि यह एक 'हैश' है तो हमें कर्ली ब्रैकेट में 'की (key)' पास करने की ज़रुरत है।
04:20 यदि यह एक 'ऐरे' है तो हमें 'इंडेक्स वैल्यूज़' के साथ स्क्वायर ब्रैकेट्स प्रयोग करने की ज़रुरत है।
04:26 'पर्ल' का रिटर्न फंक्शन एक वैल्यू रिटर्न करता है।
04:29 यह मेन प्रोग्राम में 'फंक्शन' के स्टेटस को जाँचने के लिए प्रयोग किया जा सकता है।
04:36 अगला 'फंक्शन' 'write underscore daily underscore report' है।
04:40 यह 'फंक्शन' फाइल में 'रिपोर्ट आउटपुट' प्रिंट करेगा।
04:45 ग्रेटर देन (>) सिंबल के साथ 'ओपन' फंक्शन 'WRITE' मोड को परिभाषित करता है।
04:50 फाइल वीकडे नाम और 'dot txt' एक्सटेंशन के साथ बनाई जाती है।
04:56 'प्रिंट स्टेटमेंट्स' फाइल में निर्दिष्ट वीक डे से सम्बंधित डेटा को प्रिंट करेगा।
05:02 यह साप्ताहिक रिपोर्ट प्रिंट करता है।
05:05 मैंने 'हैश रेफरेन्स' के प्रत्येक वीकडे को लूप-थ्रू करने के लिए एक 'foreach loop' घोषित किया है।
05:11 मैंने 'हैश रेफरेन्स' को दिखाने के लिए कर्ली ब्रैकेट्स और 'डीरेफरेन्स' के लिए 'एरो ऑपरेटर' प्रयोग किये हैं।
05:18 मैं 'हैश' की कीज़ को लूप-थ्रू करने के लिए 'कीज़ इन-बिल्ट' फंक्शन प्रयोग कर रही हूँ।
05:23 'display underscore daily underscore report function' 'हैश' के प्रत्येक एलिमेंट को प्रिंट करेगा।
05:30 अब, एक 'पर्ल प्रोग्राम' 'weather underscore report dot pl' देखते हैं जहाँ हम इस 'मॉड्यूल फाइल' 'Weather dot pm' को प्रयोग करेंगे।
05:40 यहाँ, 'use strict' और 'use warnings' कम्पाइलर फ्लैग्स हैं जो सामान्य प्रोग्रामिंग गलतियों से बचने में मदद करते हैं।
05:48 'use Weather' सेमीकोलन । यहाँ, 'Weather' एक 'मॉड्यूल' नाम है जो मैंने इस प्रोग्राम में प्रयोग किया है।
05:56 हमने पहले ही देखा कि इस प्रोग्राम के लिए आवश्यक फंक्शन्स इस मॉड्यूल में संचित किये गए हैं।
06:03 यहाँ 'dot pm' फाइल एक्सटेंशन देने की ज़रुरत नहीं है।
06:08 इस प्रोग्राम में, मैं दिए गए विकल्पों के आधार पर भिन्न रिपोर्ट्स प्रिंट करुँगी।
06:14 यूज़र को निम्न प्रिंट करने के लिए एक विकल्प प्रविष्ट करना है:
   एक विशिष्ट वीक डे के लिए दैनिक वेदर रिपोर्ट 
  आउटपुट फाइल  में एक विशिष्ट वीक डे की दैनिक वेदर रिपोर्ट 
   साप्ताहिक वेदर रिपोर्ट 
06:27 अगर विकल्प 1 टाइप होता है तो यह यूज़र से सप्ताह का एक दिन प्रविष्ट करने के लिए कहेगा।
06:32 'diamond' ऑपरेटर 'STDIN' से पढ़ेगा, यानि कीबोर्ड से ।
06:38 उदाहरण के लिए, अगर यूज़र 'monday' प्रविष्ट करता है तो यह एक वेरिएबल 'dollar dayoption' को असाइन किया जाता है, जो एक 'लोकल वेरिएबल' है।
06:47 आगे, हम देख सकते हैं कि हम दो फंक्शन्स कॉल कर रहे हैं-
  • 'display_header()' और
  • 'display_daily_report()'.
06:56 हमने इस फाइल में 'use Weather' स्टेटमेंट के साथ 'Weather dot pm' में सारे फंक्शन्स एक्सपोर्ट किये हैं
07:03 अतः 'colon colon (::) पैकेज क्वॉलिफायर' प्रयोग करके एक पैकेज में फंक्शन्स को उल्लिखित करने की ज़रुरत नहीं होती है।
07:10 अब अगला विकल्प देखते हैं।
07:13 अगर विकल्प 2 टाइप किया जाता है तो यह यूज़र से सप्ताह के दिन को प्रविष्ट करने के लिए कहेगा।
07:19 '$dayoption' इनपुट पैरामीटर की तरह 'write underscore daily underscore report' फंक्शन को पास किया जाता है।
07:27 फंक्शन से 'return' वैल्यू 'dollar result' वेरिएबल में संचित की जाती है।
07:33 'प्रिंट स्टेटमेंट' आउटपुट के लिए टेक्स्ट फाइल जांचने के लिए यूज़र से पूछता है।
07:38 फाइल नाम सप्ताह के दिन 'dot txt' नामक आउटपुट फाइल के रूप में बनया जाता है।
07:46 अगर विकल्प 3 टाइप होता है तो यह पूरे सप्ताह के लिए वेदर रिपोर्ट प्रिंट करता है।
07:51 'display underscore weekly underscore report' साप्ताहिक रिपोर्ट का फंक्शन नाम है।
07:57 'प्रिंट' स्टेटमेंट समय की निर्धारित संख्या के लिए एक क्षैतिज लाइन बनाता है।
08:02 यह सिर्फ रिपोर्ट को एक अच्छा रुप देने के लिए है।
08:06 अंततः, अगर विकल्प 4 होता है तो यह प्रोग्राम को छोड़ देगा।
08:11 अगर दिए गए निर्धारित विकल्पों के आलावा कोई अन्य विकल्प दिया जाता है तो प्रिंट स्टेटमेंट कहता है 'Incorrect option'
08:19 यहाँ, '0' की एक्सिट वैल्यू दिखाती है कि प्रोग्राम सफलतापूर्वक रन हुआ।
08:25 '0' के आलावा कोई अन्य एक्सिट वैल्यू का मतलब है किसी प्रकार की एक एरर आई है।
08:31 अब प्रोग्राम को निष्पादित करते हैं।
08:34 'टर्मिनल' पर जाएँ और टाइप करें 'perl weather underscore report dot pl' और एंटर दबाएं।
08:41 हम स्क्रीन पर चार विकल्प देख सकते हैं।
08:45 टाइप करें '1' और एंटर दबाएं।
08:48 हमसे सप्ताह का एक दिन प्रविष्ट करने के लिए कहा जाता है। मैं टाइप करुँगी 'monday' और एंटर दबाउंगी।
08:56 यह 'function display underscore header()' से उत्पन्न हुआ हैडर आउटपुट' है।
09:02 अब, हम मंडे (Monday) की वेदर रिपोर्ट देख सकते हैं।
09:06 अब मैं अन्य विकल्पों को दिखाने के लिए दोबारा प्रोग्राम को निष्पादित करुँगी।
09:13 टाइप करे '2' और एंटर दबाएं।
09:17 प्रॉम्प्ट पर, हमें सप्ताह का कोई भी दिन टाइप करना है। मैं टाइप करुँगी 'wednesday' और एंटर दबाउंगी।
09:25 हम एक मैसेज देख सकते हैं: 'Please check the file wednesday dot txt for report output'
09:32 आउटपुट इस टेक्स्ट फाइल पर लिखा गया है। अब हम वो फाइल खोलते हैं और विषय वस्तु जांचते हैं।
09:38 टाइप करें: 'gedit wednesday dot txt' और एंटर दबाएं।
09:44 आउटपुट फाइल प्रविष्ट सप्ताह के दिन के साथ 'txt' एक्सटेंशन से बनाई गयी है।
09:51 अब अगला विकल्प जांचते हैं।
09:54 टर्मिनल पर जाएँ और टाइप करें: 'perl weather underscore report dot pl' और एंटर दबाएं।
10:00 टाइप करें '3' और एंटर दबाएं।
10:04 इस समय हम साप्ताहिक वेदर रिपोर्ट देख सकते हैं।
10:08 'हैश कीज़' और 'हैश वैल्यूज़' यादृच्छिक क्रम में संचित किये जाते हैं।
10:13 अतः प्रदर्शित आउटपुट उस क्रम से सम्बंधित नहीं होता है जिसमें वे जोड़े गए थे।
10:19 इसके साथ हम इस ट्यूटोरियल के अंत में आ गए हैं। इसे सारांशित करते हैं।
10:24 इस ट्यूटोरियल में हमने अपने पिछले ट्यूटोरियल्स के मुख्य विषयों को कवर करके सैंपल 'पर्ल' प्रोग्राम देखा।
10:32 एक नियत कार्य में, 'एम्प्लॉई की सैलरी, पद का नाम (डेसिग्नेशन), विभाग (डिपार्टमेंट), लीव_बैलेंस जानकारियां दिखाने के लिए एक वैसा ही 'पर्ल' प्रोग्राम 'employee underscore report.pl' लिखें।
10:45 इनपुट की तरह 'Employee ID' या 'Employee name' पास करें।
10:50 मॉड्यूल 'Employee dot pm' फाइल में आवश्यक फंक्शन्स लिखें।
10:56 निम्न लिंक पर उपलब्ध वीडिओ स्पोकन ट्यूटोरियल प्रोजेक्ट को सारांशित करता है। कृपया इसे डाउनलोड करें और देखें।
11:03 हम कार्यशालाएं चलाते हैं और ऑनलाइन टेस्ट पास करने वालों को प्रमाणपत्र देते हैं। अधिक जानकारी के लिए कृपया हमें लिखें।
11:12 स्पोकन ट्यूटोरियल प्रोजेक्ट भारत सरकार के एमएचआरडी के NMEICT द्वारा निधिबद्ध है। इस मिशन पर अधिक जानकरी इस लिंक पर उपलब्ध है।
11:25 आय आय टी बॉम्बे से मैं श्रुति आर्य आपसे विदा लेती हूँ। हमसे जुड़ने के लिए धन्यवाद।

Contributors and Content Editors

Pratik kamble, Shruti arya