Coding for KidsCoding for Kids
रचनात्मक स्तरचुनौतियांशिक्षक गाइड
सुविधाओं के लिए वोट करें
उन्नत पायथन विकास पाठ्यक्रम
अध्याय
>
स्तर

गणित मॉड्यूल्स
गणित मॉड्यूल परिचय

उद्देश्य

फार्म में भूमि अभिलेख और संपत्ति रेखाओं की जाँच करें, सत्यापित करें और Math Module के फंक्शन्स का उपयोग करके संख्याओं का विश्लेषण करें।

मुख्य भवन के बिलकुल किनारे पर स्थित कार्यालय में भवन और भूमि अभिलेखों के पुराने ब्लूप्रिंट्स का एक अभिलेख है। फार्म को पूर्व की ओर विस्तारित करने की योजनाएँ हैं, लेकिन किसी भी निर्माण योजना को देखने से पहले सभी काग़जी कार्रवाई को सही करना आवश्यक है। यह कार्य python के math मॉड्यूल का उपयोग करके किया जाएगा।

import math

जैसा कि पहले statistics मॉड्यूल में था, math मॉड्यूल में python की अंतर्निहित लाइब्रेरी का विस्तार करने के लिए हम उपयोग कर सकने वाले कई गणितीय फंक्शन संग्रहित हैं:

  • math.isnan(): जाँचता है कि इनपुट किया गया मान संख्या नहीं है

  • math.isinf(): जाँचता है कि इनपुट मान अनंत (infinite) है

  • math.isfinite(): जाँचता है कि इनपुट मान सीमित (finite) है

  • math.prod(): जोड़े गए सभी तर्कों का गुणनफल निकालता है

  • math.pow(): दो तर्क लेता है और पहले तर्क का मान दूसरे तर्क की शक्ति पर लौटाता है

  • math.trunc(): दिए गए तर्क से दशमलव भाग को हटाता है, जिससे संख्या पूर्णांक में परिवर्तित हो जाती है (गोलाई (round) नहीं करता, केवल दशमलव हटाता है)

  • math.copysign(): दो तर्क लेता है, दूसरे तर्क से चिन्ह (-,+) को कॉपी करता है और पहले पर लागू करता है

  • math.factorial(): एक तर्क लेता है और उस संख्या का 1 तक के गुणनफल की गणना करता है। उदाहरण के लिए, यदि मान 5 है तो यह करता है: 5 x 4 x 3 x 2 x 1 और परिणाम देता है।

इन फंक्शन्स का उपयोग करके हम विकास परियोजनाओं की तैयारी हेतु कुछ डेटा की समीक्षा और चार्ट बनाएंगे। खेत की योजना दर्शाने वाली तीन सूची निरंतर हैं: red_schematics, green_schematics, blue_schematics। इन योजनाओं में गैर-सांख्यिकीय और अनुपयोगी मान लिखे गए हैं; math फंक्शन्स का उपयोग करके उपयुक्त डेटा पहचाने और चार्ट करें।

पहले लाल कालीन पर स्थित डार्क X मार्क तक जाएँ, और red_schematics सूची के तत्वों में से उपयोगी तत्वों की पहचान करने के लिए एक लूप का उपयोग करें।

for x in red_schematics: y = math.isnan (float(x)) if y == True: player.speak("Not a Number") else: y = math.isinf(float(x)) if y == True: player.speak("Is infinite") else: player.speak(x)

यह लूप सूची के सभी तत्वों में से गुज़रता है, math.isnan() फंक्शन गैर-सांख्यिकीय प्रविष्टियों की पहचान करता है, और math.isinf() अनंत मानों की पहचान करता है जिन्हें डेटा संग्रह के लिए उपयोग नहीं किया जा सकता। एक नई सूची red_values बनाएं और एक सूची अभिव्यक्ति (list comprehension) का उपयोग करके अवांछित तत्वों को math.isfinite() से फ़िल्टर करें, इस प्रकार: red_values = [x for x in red_schematics if math.isfinite(float(x))]

इसके बाद math.prod() फंक्शन का उपयोग करके सूची के सभी तत्वों को जोड़ दें, इस प्रकार: red_values = math.prod(red_values)

उसी छँटाई प्रक्रिया को हरे और नीले कालीन पर स्थित डार्क X मार्क्स पर भी करें, green_schematics और blue_schematics सूची निरंतरों का उपयोग करें और तत्वों को green_values और blue_values नामक सूचियों में एकत्रित करें।

गोल्ड X मार्क तक जाएँ, डेस्क का सामना करें और संपादक में पूर्व-निर्धारित write() फंक्शन का उपयोग करके उपयोगी योजना डेटा का चार्ट बनाएं। एक बार जब सब कुछ एकत्रित हो जाए, तो लाइट X मार्क तक जाएँ और अगला कमरा खोलने के लिए open() फंक्शन का उपयोग करें।

अगले कमरे में, कुछ डेस्क हैं जिन पर भूमि विलेख और निर्देशांक (coordinates) लिखे हैं। ब्रिज के पार अगले क्षेत्र में खेत में नए परिवर्धनों की जाँच से पहले डेटा चार्ट करना अच्छा रहेगा। पहले डेस्क के पास नक्शों वाले क्रेट के सामने स्थित लाइट X मार्क तक जाएँ, और भूमि विलेख के लिए इंडेक्स डेटा प्राप्त करने हेतु read() फंक्शन का उपयोग करें।

पर्पल कालीन पर डार्क X मार्क तक जाएँ, purple_data नाम का एक वेरिएबल बनाएं और प्राप्त डेटा को गुणा करने के लिए math.pow() फंक्शन का उपयोग करें ताकि निर्देशांक जानकारी प्राप्त हो सके। इंडेक्स को 3 की शक्ति पर उठाएँ, इस प्रकार: purple_data = math.pow( -index data- , 3 ), ध्यान रहे कि आपने पहले पढ़ा हुआ इंडेक्स डेटा जोड़ना है। इसके पश्चात math.trunc() का उपयोग करके वेरिएबल से दशमलव भाग को हटाएँ, इस प्रकार: purple_data = math.trunc(purple_data)। एक बार पूर्ण हो जाने के बाद, X मार्क पर, पूर्व-लिखित write() फंक्शन का उपयोग करें और purple_data का उपयोग करते हुए उस वेरिएबल में संग्रहित डेटा को चार्ट करें।

अंत में, टॉप डेस्क के बगल में स्थित फाइलिंग कैबिनेट के सामने लाइट X मार्क तक जाएँ। यहाँ एक बार फिर से इंडेक्स डेटा प्राप्त करने के लिए read() फंक्शन का उपयोग करें; इस डेटा को खोलने (unwrap) की आवश्यकता है ताकि भूमि के लिए अतिरिक्त निर्देशांक जानकारी प्राप्त हो सके।

एक वेरिएबल white_data बनाएं ताकि फ़ाइल में पाए गए डेटा मान को संग्रहीत किया जा सके और एक वेरिएबल sign बनाएं ताकि फ़ाइल में पाया गया संकेत (sign) संग्रहीत किया जा सके।

सफेद कालीन पर स्थित डार्क X मार्क तक जाएँ और पहले बनाए गए इन दो वेरिएबल्स का उपयोग करते हुए math.copysign() फंक्शन का उपयोग करें तथा प्राप्त मान को white_data में असाइन करें, इस प्रकार: white_data = math.copysign(white_data,sign)

इसके बाद, white_data के साथ math.factorial() का उपयोग करें ताकि इंडेक्स का गुणनफल निकाला जा सके, पहले white_data को पूर्णांक में परिवर्तित करें और फंक्शन के साथ उपयोग करें, इस प्रकार: white_data = math.factorial(int(white_data))। स्तर पूरा करने हेतु पूर्व-लिखित write() फंक्शन का उपयोग करके white_data का चार्ट बनाएं।

कोड बुक