उन्नत पायथन विकास पाठ्यक्रम
अध्याय
>
स्तर
गणित मॉड्यूल
गणित मॉड्यूल विस्तारित
उद्देश्य
गणित मॉड्यूल द्वारा आयात किए गए और अधिक फ़ंक्शन्स का उपयोग करते हुए खेत के नए भूमि विस्तारों की गणना करें।
पुल के उस पार, एनेक्स में कुछ कार्यालय हैं, जो कि खेत के दो विभिन्न हिस्सों को जोड़ने वाली अविकसित भूमि का सर्वेक्षण करने के लिए उपयोग किए जाते हैं। यहां हम कुछ भूमि आयाम और माप पाएंगे, उन्हें छांटने और डेटा का दस्तावेजीकरण करने का एक अच्छा विचार रहेगा। आप इसे गणित मॉड्यूल का उपयोग करके पूरा कर सकते हैं, इस स्तर में हमें इसके नए फ़ंक्शन्स के सेट से परिचित कराया जाएगा, जिन्हें हम डेटा को संसाधित करने के लिए इस्तेमाल कर सकते हैं। आप इसी तरह import math और फ़ंक्शन्स के पहले math. का उपयोग करके इस सेट का उपयोग करते हैं:
math.radians(): डिग्री को रेडियन/कोण में परिवर्तित करता है।math.floor(): किसी संख्या को उसके आधार संख्या की ओर गोल करता है।math.ceil(): किसी संख्या को उसके ऊपर के निकटतम पूरे नंबर तक गोल करता है।math.atan2(): दो संख्याओं के बीच के आर्क टैन्जेंट (रेडियन में) लौटाता है।math.isclose(): जांचता है कि क्या दो संख्याएं एक-दूसरे के करीब हैं, true/false लौटाता है।math.fsum(): लिस्ट या इटेरेबल से फ्लोट पॉइंट (दशमलव) संख्याओं को जोड़ता है।math.dist(): दो बिंदुओं के बीच की दूरी की जांच करता है, मानों को लिस्ट या इटेरेबल होना चाहिए।
चार्ट से कच्चे डेटा को इकट्ठा करने की शुरुआत करें, लाल और नीले कालीन पर स्थित हल्के X मार्क्स के पास जाकर। माप लेने के लिए आवश्यक कच्चे आयामों की पहचान करने हेतु read() फ़ंक्शन का उपयोग करें। ये माप पहले से चार स्थिर चर में संग्रहित हैं जिनका नाम है: red_x, red_y, blue_x और blue_y
जैसे ही दोनों डेटा सेट की पहचान हो जाए, नारंगी कालीन पर स्थित गहरे X मार्क के पास जाकर डेस्क का सामना करें। math.radians() और math.ceil() का उपयोग करके blue_x और blue_y चर को रेडियन में परिवर्तित करें और उन्हें ऊपर की ओर गोल करें। सुनिश्चित करने के लिए कि स्थिरांक दशमलव हैं जिन्हें संपादित किया जा सकता है, float() का उपयोग करें। उदाहरण के लिए, blue_x चर के लिए: पहले रेडियन में बदलें blue_x = math.radians(float(blue_x)) और फिर मान को ऊपर की ओर गोल करें blue_x = math.ceil(float(blue_x))। इसी तरह इस X मार्क पर blue_y के लिए भी करें, एक बार पूरा हो जाने पर, पूर्व-लिखित write() फ़ंक्शन का उपयोग करें और blue_x तथा blue_y चर को चार्ट पर अंकित करें।
हरा कालीन पर स्थित गहरे X मार्क पर चलें और math.radians() तथा math.floor() का उपयोग करके red_x और red_y चर को रेडियन में परिवर्तित करें और उन्हें नीचे की ओर गोल करें। उदाहरण के लिए, red_x चर के लिए: पहले इसे रेडियन में बदलें red_x = math.radians(red_x) और फिर मान को नीचे की ओर गोल करें blue_x = math.floor(red_x)। इसी तरह इस X मार्क पर red_y के लिए भी करें, एक बार पूरा हो जाने पर, पूर्व-लिखित write() फ़ंक्शन का उपयोग करें और red_x तथा red_y चर को चार्ट पर अंकित करें।
सुनहरे X मार्क पर चलें और डेस्क का सामना करें, यहां हम दो नए चर data_a और data_b बनाएंगे। यहां हम math.atan2 फ़ंक्शन का उपयोग करके प्रत्येक सेट के आर्क टैन्जेंट्स संग्रहीत करेंगे। data_a के लिए, blue_x और blue_y चर का उपयोग करते हुए फ़ंक्शन को इस प्रकार भरें: data_a = math.atan2(blue_x,blue_y)। data_b के लिए भी ऐसा ही करें लेकिन red_x और red_y का उपयोग करें। एक बार पूरा हो जाने पर, पूर्व-लिखित write() फ़ंक्शन का उपयोग करें और data_a तथा data_b चर को चार्ट पर अंकित करें।
अब जब निचले डेस्क का काम पूरा हो गया है, बैंगनी कालीन पर स्थित गहरे X मार्क के पास जाएं, एक चर comparison बनाएं और इसे math.isclose() फ़ंक्शन के साथ उपयोग करें, जिसमें data_a और data_b आर्गुमेंट के रूप में दिए जाएं, इस प्रकार: comparison = math.isclose(data_a, data_b)। इस X मार्क पर पूर्व-लिखित write() फ़ंक्शन के साथ comparison चर का उपयोग करें।
सफेद कालीन पर स्थित X मार्क पर जाएं, एक लिस्ट data_list बनाएं और उसमें क्रम से data_a तथा data_b जोड़ें। एक चर total बनाएं और data_list को आर्गुमेंट के रूप में लेकर math.fsum() फ़ंक्शन का उपयोग करें, इस प्रकार: total = math.fsum(data_list)। इस X मार्क पर पूर्व-लिखित write() फ़ंक्शन के साथ total चर का उपयोग करें।
पीले कालीन पर स्थित गहरे X मार्क पर जाएं और डेस्क का सामना करें, data_a तथा data_b को व्यक्तिगत लिस्ट मानों में परिवर्तित करें, उदाहरण के लिए data_a के लिए करें: data_a = [data_a]। data_b के लिए भी ऐसा ही करें ताकि दोनों चर इटेरेबल्स में परिवर्तित हो जाएं जिन्हें math.dist() फ़ंक्शन के साथ उपयोग किया जा सके। एक चर distance बनाएं और इसके माध्यम से math.dist() का मान संग्रहीत करें, इसके आर्गुमेंट के रूप में data_a तथा data_b का उपयोग करें। इस X मार्क पर पूर्व-लिखित write() फ़ंक्शन के साथ distance चर का उपयोग करें ताकि स्तर पूरा हो सके।