पाठ 1: प्रोग्रामिंग: माई रोबोटिक फ्रेंड्स

एल्गोरिथम | डिबगिंग | अनपल्गड

रूप-रेखा

ऑफलाइन कमांड्स के विशेष सेट का उपयोग करते हुए, छात्र अलग-अलग पैटर्नों में कपों को जोड़ने के लिए "रोबोट” को निर्देश देने की कलन विधियां डिज़ाइन करेंगे। छात्र केवल अपने साथियों द्वारा परिभाषित कलन विधि के लिए प्रतिक्रिया करते हुए, रोबोट के तौर पर बारी-बारी से भाग लेंगे। यह खंड छात्रों को चिन्हों और क्रियाओं के बीच संबंध, कलन विधि और प्रोग्राम के बीच अंतर, और डीबगिंग के बहुमूल्य कौशल सिखाते हैं।

उद्देश्य

यह अनप्लग्ड पाठ साधारण कार्य: विशिष्ट डिज़ाइन में कपों को जोड़ने के लिए "रोबोट” प्राप्त करना को पूरा करने के लिए कक्षा को टीम के रूप में साथ लाता है। छात्र कोड में संभावी निर्देशों के रूप में वास्तविक दुनिया की क्रियाओं को पहचानने के लिए काम करेंगे। सही निर्देशों का अनुसरण करने की कला का भी अभ्यास किया जाएगा, जब छात्र प्रदान किए गए चिन्हों का उपयोग करते हुए, कलन विधियों को कोड में रूपातरिंत करने के लिए काम करेंगे। यदि कोड में कोई समस्या उत्पन्न होती है, तो छात्र बग्स को पहचानने और समाधान तैयार करने के लिए साथ मिलकर काम करेंगे। यह गतिविधि प्रोग्रामिंग के लिए आधार तैयार करती है, जिसे छात्र पूरे कोर्स के दौरान करेंगे, जब वे स्पष्ट रूप से बताई गई कलन विधि को परिभाषित करने के महत्व के बारे में जानेंगे।

एजेंडा

तैयार हों (5 मिनट)

गतिविधि (45 मिनट)

समाप्ति (10 मिनट)

कोड स्टूडियो पर देखें

लक्ष्य

छात्र इस योग्य होंगे:

  • चरणों के क्रम को कूटलेखन वाले प्रोग्राम के तौर पर नए फ्रेम में रखें
  • क्म में रखे निर्देशों में बग्स या त्रुटियों को पहचानें व उन पर ध्यान दें

तैयारी

  • (वैकल्पिक) प्रति समूह या 4 छात्रों के लिए एक माई रोबोटिक फ्रेंड्स - सिम्बल कुंजी प्रिंट करें। वैकल्पिक तौर पर, इस जानकारी को प्रदर्शित करने के लिए स्थान ढूंढें, जहां छात्र पूरे पाठ में संदर्भ दे सकें।
  • 4 छात्र प्रति समूह 10 डिस्पोजेबल कपों का ढेर तैयार करें, या
  • (वैकल्पिक) यदि आपकी कक्षा कपों का उपयोग नहीं करती है तो प्रत्येक समूह के लिए ट्रेपजॉयड टेम्प्लेट - मैनिपुलेटिव्स - प्रिंट करें और काटें।
  • प्रति समूह स्टैकिंग कप आइडियाज - मैनिपुलेटिव्स का एक सेट प्रिंट करें।
  • सुनिश्चित करें कि प्रत्येक छात्र के पास थिंक स्पॉट जर्नल है।

लिंक

हेड्स अप! कृपया किसी भी उन दस्तावेज की एक प्रति बनाएं, जिन्हें आप छात्रों के साथ साझा करने वाले हैं।

छात्रों के लिए

शब्दावली

  • कलन विधि - कार्य को समाप्त करने के चरणों की सूची।
  • बग - प्रोग्राम का वह भाग, जो सही ढंग से काम नहीं करता।
  • डिबगिंग - कलन विधि या प्रोग्राम में समस्याएं ढूंढना और हल करना।
  • लूप - कुछ बार-बार करने की क्रिया।
  • प्रोग्राम - एक कलन विधि, जो किसी ऐसी चीज़ में कोड की गई है, जिसे मशीन द्वारा चलाया जा सकता है।
  • दोहराएं - कुछ दुबारा करें

अध्यापन गाइड

तैयार हों (5 मिनट)

Discussion Goal

इस त्वरित चर्चा का लक्ष्य इस बात पर ज़ोर देना है कि जब रोबोट लोगों की तरह व्यवहार करते प्रतीत होते हैं, तो असल में वे केवल अपने प्रोग्रामिंग के लिए प्रतिक्रिया कर रहे होते हैं। छात्र शायद फिल्मों और टीवी के रोबोट्स का संदर्भ देखेंगे, जो काफी हद तक मनुष्यों की तरह व्यवहार करते हैं। उन्हें ऐसे रोबोट्स पर विचार करने पर ज़ोर दें, जिन्हें उन्होंने वास्तविक जीवन में देखा या सुना है, जैसे Roombas, या डिजीटल सहायक जैसे Amazon Alexa आदि।

रोबोट्स से बात करना

चर्चा करें: कक्षा से यह पूछकर शुरुआत करें कि क्या किसी ने रोबोटिक्स के बारे में सुना है। क्या किसी ने रोबोट को देखा या उसे छुआ है? क्या रोबोट सचमुच वह “सुन” लेता है, जो आप बोलते हैं? क्या यह सचमुच वह “समझता” है, जो आप कहते हैं?

कहें: रोबोटिक्स केवल वही करते हैं, जो करने के लिए उन्हें निर्देश दिया गया हो या प्रोग्राम किया गया हो। किसी कार्य को पूरा करने के लिए, रोबोट को निर्देशों की सूची की जरूरत होती है (कभी-कभार इसे कलन विधि कहा जाता है), जिसे यह पढ़ सकता है। आज, हम यह सीखेंगे कि इसे कौन-सी चीज़ वैसा करने के लिए सक्रिय करती है।

गतिविधि (45 मिनट)

परिचय और नमूना चित्रित करना

रोबोट चिन्ह

Teaching Tip

विकल्पों का विभेदन:


सरल बनाएं: क्या यह सब आपके छात्रों के लिए थोड़ा जटिल लगता है? नीचे प्रक्रिया को आसान बनाने के लिए कुछ सुझाव दिए गए हैं:

  • ऊपर और नीचे के बहुत-से स्टेप्स लोड करें
    • ऊपर का मतलब है कि कप अपने आप ऊपर जाता रहता है, जितनी ऊपर इसे जाने की जरूरत होती है
    • नीचे का मतलब है कि यह अपने आप नीचे जाता रहता है, जब तक कि यह किसी चीज़ पर उतर न जाए
    • कप को स्थापित करने के बाद हाथ अपने आप कप स्टैक पर वापस आ जाता है

तीव्र करें: क्या आपके छात्र अधिक एडवांस हैं? क्या आप इस पाठ को ऑनलाइन पहेलियों के लिए अधिक ध्यानपूर्वक वर्णन करना चाहते हैं? यहां कुछ संशोधन हैं, जो आप कर सकते हैं:

  • एक तीर एक गतिविधि के अनुरूप है
  • जब कप को स्टैक में से हटाया जाता है, तो यह मूव करने से पहले मेज़-स्तर पर लौटता है
  • छात्रों को कप को कई स्तरों पर उठाने के लिए कई "ऊपर" वाले तीरों का उपयोग करने की जरूरत है
    • छात्रों को कप को कई स्तरों पर नीचे करने के लिए कई "नीचे" वाले तीरों का उपयोग करने की जरूरत है
    • छात्रों को कप का स्टैक को वापस लाने के लिए "पीछे" के तीरों का उपयोग करने की जरूरत है
  • सेट अप: समूहों के लिए कपों के स्टैक या कागज़ के कटे हुए समलंब उपलब्ध कराएं।

प्रदर्शित करें: प्रोग्रामिंग: माई रोबोटिक फ्रेंड्स - चिन्ह कुंजी प्रदर्शित करें या बोर्ड पर अनुमति दी गई क्रियाएं लिखें - सुनिश्चित करें कि ये उस स्थान पर हैं, जहां उन्हें संपूर्ण गतिविधि के लिए देखा जा सकता है। कक्षा को स्पष्ट करें कि ये केवल चार क्रियाएं हैं, जिन्हें वे इस अभ्यास के लिए उपयोग कर सकते हैं। इस कार्य के लिए, वे केवल कुंजी पर सूचीबद्ध कमांड्स का उपयोग करते हुए विशेष कप का स्टैक बनाने के लिए अपने “रोबोट” दोस्त को निर्देश देंगे।

मॉडल: यह बताने के लिए कि निर्देशों को किस प्रकार काम करने के लिए बनाया गया है, कक्षा के लिए नमूना चित्रित करें कि साधारण पैटर्न को दोहराने के लिए कैसे कलन विधि बनाएं और उसका अनुसरण करें।

प्रदर्शित करें: उस पैटर्न को प्रदर्शित करें, जिसका नमूना चित्रित करने की आपकी योजना है। साधारण तीन कप का पैटर्न शुरू करने के लिए बढ़िया स्थान है।

सुझाव: कक्षा को पूछें कि केवल अनुमति दिए गए चार निर्देशों का उपयोग करते हुए पहला निर्देश क्या होना चाहिए। पहला मूव "कप उठाएं” होना चाहिए। यदि छात्र सूची में से कुछ और सुझाव देते हैं, तो वह क्रिया करें और उन्हें अपनी त्रुटि देखने दें। यदि वे सूची में से कुछ सुझाव नहीं देते हैं, तो स्पष्ट खराबी प्रतिक्रिया करें और उन्हें बताएं कि कमांड ने समझा नहीं है।

हाथ में कप लेकर, कक्षा से आपको तब तक लगातार निर्देश देने को कहें, जब तक पहला कप रखा नहीं जाता। यह स्पष्ट करने के लिए यह बढ़िया स्थान है कि "आगे बढ़ें" और "पीछे जाएं" प्रत्येक क्रिया कप की आधी चौड़ाई को मूव करने पर लागू होती है। संदर्भ के लिए निम्नलिखित चित्र देखें।

3 कप पैटर्न

कक्षा से तब तक निर्देशों की मांग करते रहें, जब तक कि आप संपूर्ण डिज़ाइन पूरा न कर लें।

जब आपका स्टैक पूरा हो जाए, तो संकेत करें कि उन्होंने अभी आपको कार्य को पूरा करने के लिए स्टेप्स की सूची दी है। वह कलन विधि है। कलन विधियां सुझाव साझे करने के लिए बहुत ही बढ़िया हैं, लेकिन एक-एक शब्द का उच्चारण करने में बहुत ज्यादा समय लग सकता है। चिन्ह इसके लिए ही होते हैं! जब आप किसी कलन विधि को ऐसे चिन्हों में बदलते हैं, जिसे रोबोट (या कंप्यूटर) समझता है,

तो इसे प्रोग्रामिंग कहते हैं।तीर को टेक्सट में बदलकर उस पहले मूव के लिए "प्रोग्राम" लिखने में मदद करने के लिए कहें। फिर पैटर्न को पूरा करने के लिए बाकी जरूरी मूव्स लिखने के लिए उनके साथ मिलकर काम करें। अपने छात्रों के विश्वास के आधार पर, आप "रोबोट" के तौर पर काम करने और कोड लिखने के बीच आगे-पीछे अदला-बदली कर सकते हैं, या आप प्रोग्राम को लागू करने से पहले उन्हें संपूर्ण प्रोग्राम लिखने के लिए कह सकते हैं। एक संभावी समाधान इस प्रकार प्रतीत होता है:

3 कप समाधान

वालंटियर: जब कक्षा मॉडल प्रोग्राम को पूरा कर ले, तो किसी एक छात्र बुलाएं और यह सुनिश्चित करने के लिए "रोबोट” के तौर पर काम करें कि प्रोग्राम सही तरीके से काम करता है। उन्हें निर्देशों को ज़ोर से बोलने के लिए प्रोत्साहित करें, जब वे कोड "चलाएं।”

अपने रोबोट्स को प्रोग्राम करना

समूहों में बांटें: छात्रों को 4 के समूहों में बांटें। उसके बाद प्रत्येक समूह को दो जोड़ियों में बांटा जाना चाहिए - प्रत्येक जोड़ी अन्य जोड़ी के द्वारा "चलाए" जाने के लिए अपना खुद का प्रोग्राम विकसित किया।

वितरित करें: प्रत्येक समूह को कप या कागज़ के कटआउट का एक स्टैक दें।

प्रदर्शित करें: कक्षा को स्टैकिंग कप सुझाव - प्रहस्तनीय दिखाएं या समूहों के उपयोग के लिए अलग-अलग प्रतियां दें। प्रत्येक जोड़ी (समूह को नहीं) को यह चयन करने को कहें कि वे अपने रोबोट से कौन-से सुझाव पर काम करवाना चाहते हैं। पहली बार अधिक आसान सुझाव पर ज़ोर देने का प्रयास करें, फिर बाद में उन्हें अधिक जटिल डिज़ाइन चुनने को कहें। जोड़ियों को अपने समूह के दूसरे आधे हिस्से से अपने चयन को छिपाकर रखने के लिए प्रोत्साहित करें।

चर्चा करें: प्रत्येक जोड़ी को इस बारे में चर्चा करने के लिए समय दें कि केवल दिए गए चिन्हों का उपयोग करते हुए स्टैक कैसे बनाया जाना चाहिए। सुनिश्चित करें कि प्रत्येक समूह "रोबोट” द्वारा बाद में पढ़ने के लिए कहीं पर "प्रोग्राम" को लिखकर रखता है।

Teaching Tip

नियम लागू करना: जब रोबोट स्टैक पर काम कर रहा हो, तो सुनिश्चित करें कि कक्षा को इस बारे में पता है:

  • प्रोग्रामर्स को उस समय बात करने की अनुमति नहीं होती, जब रोबोट काम कर रहा होता है। इसमें ज़ोर से बोलकर जवाब देना या जब रोबोट कुछ गलत कर रहा हो तो टोकना शामिल है।
  • प्रोग्रामर्स को अपना हाथ ऊपर उठाना चाहिए, यदि उन्हें कोई बग दिखाई देता है।

करें: जब दोनों समूह अपने प्रोग्राम पूरे कर लें, तो वे अन्य जोड़ी द्वारा लिखे निर्देशों का अनुसरण करके एक-दूसरे के लिए "रोबोट” बनने की बारी ले सकते हैं। यह सुनिश्चित करने के लिए छात्रों को अपने "रोबोट” पर ध्यानपूर्वक नज़र रखने को प्रोत्साहित करें कि वे निर्देशों का अनुसरण कर रहे हैं। यदि किसी छात्र को कोई बग दिखाई देता है और वह अपना हाथ उठाता है, तो रोबोट को अपनी क्षमता के अनुसार निर्देश पूरा करने को कहें। उसके बाद, छात्रों को संभावी बग के बारे में चर्चा करने और समाधानों का सुझाव देने को कहें। तब तक दोहराएं, जब तक कि स्टैक सही ढंग से न बन जाए।

घूमें: उन समूहों पर नज़र रखें, जो अपने कोड में अतिरिक्त चीज़ें (जैसे संख्याएं) जोड़कर शॉर्टकट लेने का प्रयास कर रहे हैं। उनके सुप्रयोग के लिए उनकी प्रशंसा करें, लेकिन उन्हें यह भी याद दिलाएं कि इस अभ्यास के लिए, रोबोट कुछ नहीं समझते, वे केवल दिए गए चिन्हों को समझते हैं। यदि आप चाहें, तो आप संकेत दे सकते हैं कि उन्हें अगली बार इस गेम को खेलने के लिए अपने शानदार समाधान को सुरक्षित रखना चाहिए, क्योंकि उन्हें जल्द ही अपने आविष्कार का उपयोग करने का अवसर मिल सकता है!

दोहराएं: उपलब्ध समय के आधार पर, जोड़ियों को मिलाएं और उन्हें अलग-अलग पैटर्न पर काम करने का अवसर दें। हर बार समूह प्रक्रिया को दोहराएं, उन्हें अधिक चुनौतीपूर्ण पैटर्न का चयन करने के लिए प्रोत्साहित करें।

Discussion Goal

अर्थ निकलना: इस चर्चा का लक्ष्य छात्रों को रोबोट और प्रोग्रामर दोनों के तौर पर अपने अनुभवों को समझने के लिए स्थान देना है। सवालों को जानबूझ कर व्यापक बनाया गया है, लेकिन छात्रों को स्पष्ट प्रोग्राम लिखने की चुनौतियों और अपने निर्देशों की व्याख्या करने में रोबोट या कंप्यूटर के अवरोधों के बारे में सोचने के लिए तैयार किया गया है।

चर्चा करें: जब हर किसी को रोबोट बनने का अवसर मिल जाए, तो कक्षा को अपने अनुभवों पर चर्चा करने के लिए फिर से इकट्ठा करें। विशेषकर, कक्षा के तौर पर चर्चा करें:

  • निर्देश सोचने का सबसे मुश्किल हिस्सा क्या था?
  • क्या किसी को अपने निर्देशों में कोई बग मिला, जब आपके रोबोट ने उनका अनुसरण करना शुरू किया?
    • बग क्या था?
    • आपको ऐसा क्यों लगता है कि आपने प्रोग्राम लिखते समय उस पर ध्यान नहीं दिया?
  • जब आप रोबोट थे, तो आपको दिए गए निर्देशों का अनुसरण करने का सबसे मुश्किल हिस्सा कौन-सा था?

समाप्ति (10 मिनट)

जर्नल तैयार करना

छात्रों ने जिस बारे में सीखा है, यह क्यों उपयोगी है, और वे इस बारे में क्या महसूस करते हैं, लिखवाने से, किसी भी उस ज्ञान को ठोस बनाने में मदद मिल सकती है, जो उन्होंने आज प्राप्त किया है और भविष्य में उनके देखने के लिए एक समीक्षा शीट तैयार करें।

जर्नल संबंधी सुझाव:

  • आज का पाठ किस बारे में था?
  • आपको आज का पाठ कैसा लगा?
  • आपने अपनी गेम को बेजोड़ बनाने के लिए क्या किया?
  • ऐसी गेम चित्रित करें, जिसे आप भविष्य में बनाना चाहते हैं।

मानक संरेखण

पूर्ण पाठ्यक्रम संरेखण देखें

CSTA K-12 Computer Science Standards (2017)

AP - Algorithms & Programming
  • 1B-AP-11 - Decompose (break down) problems into smaller, manageable subproblems to facilitate the program development process.

पार-पाठिक अवसर

यह सूची अन्य सामग्री क्षेत्रों में मानकों का समर्थन करने के लिए इस पाठ में अवसरों का प्रतिनिधित्व करती है।

समान कोर अंग्रेजी भाषा कला के मानक

L - भाषा
  • 4.L.6 - ग्रेड-उपयुक्त सामान्य शैक्षणिक और विषय-विशिष्ट शब्द और वाक्यांश अर्जित व उपयोग करें, उनके सहित, जो सटीक क्रियाओं, जज्बातों, या होने की स्थितियों (जैसे हंसी उड़ाना हकलाहट, हिनहिनाहट) और जो किसी विशेष विषय के लिए बुनियादी हों (जैसे जानवरों के अभिरक्षण पर चर्चा करते समय वन्य जीवन, संरक्षण, लुप्तप्रायः)।
SL - बोलना व सुनना
  • 4.SL.1 - दूसरों के विचारों के आधार पर और उनके खुद के विचारों को स्पष्ट रूप से अभिव्यक्त करते हुए, ग्रेड 4 के विषयों, टेक्सट के बारे में विविध साझेदारों के साथ कई प्रकार की सहयोगात्मक चर्चा (आमने-सामने, समूहों में, और अध्यापक-संचालित) में प्रभावशाली रूप से शामिल हों।
  • 4.SL.1.b - चर्चाओं के लिए सहमति-प्राप्त नियमों का पालन करें और सौंपी गई भूमिकाओं को पूरा करें।
  • 4.SL.1.c - जानकारी को स्पष्ट करने या जांचने के लिए विशेष सवाल पूछें और जवाब दें, और ऐसी टिप्पणियां करें, जो चर्चा में योगदान दें और दूसरों की टीका-टिप्पणियों से जोड़ें।
  • 4.SL.6 - उन संदर्भों, जिनके लिए औपचारिक अंग्रेज़ी की आवश्यकता हो (जैसे विचार पेश करना) और उन स्थितियों में अंतर करें, जहां अनौपचारिक प्रकटन उचित हो (जैसे छोटे-समूह में चर्चा); जब कार्य और स्थिति के लिए उपयुक्त हो तो औपचारिक अंग्रेजी का उपयोग करें।

समान कोर गणित के मानक

MP - गणित के अभ्यास
  • MP.1 - सवालों का अर्थ निकालें और उन्हें हल करने का निरंतर प्रयास करें
  • MP.2 - अमूर्त रूप से और मात्रात्मक ढंग से तर्क करें
  • MP.3 - व्यवहार्य तर्क-वितर्कों की रचना करें और दूसरों के तर्कों समीक्षा करें
  • MP.5 - कार्यनीतिक रूप से उपयुक्त टूल्स का उपयोग करें
  • MP.6 - शुद्धता पर ध्यान दें
  • MP.7 - संरचना खोजें व उसका उपयोग करें
  • MP.8 - दोहराए गए तर्क में नियमितता खोजें और व्यक्त करें

नेक्सट जेनरेशन साइंस संबंधी मानक

ETS - Engineering in the Sciences
ETS1 - इंजीनियरिंग डिज़ाइन
  • 3-5-ETS1-1 - किसी आवश्यकता या इच्छा पर विचार करते हुए सामान्य डिज़ाइन को परिभाषित करें, जिसमें सफलता के लिए निर्दिष्ट मापदंड और सामग्री, समय या लागत पर नियंत्रण शामिल हों।
  • 3-5-ETS1-3 - उचित परीक्षणों की योजना बनाएं व उसे पूरा करें, जिसमें वेरिएबल्स को नियंत्रित किया जाता है और असफल बिंदुओं पर मॉडल या प्रोटोटाइप के उन पक्षों की पहचान करने के लिए विचार किया जाता है, जिन्हें संशोधित किया जा सकता है।