विषयसूची:

बिट सोच क्या है? बीबीसी माइक्रोबिट के साथ एक सरल अनुमान लगाने वाला गेम बनाएं!: 10 कदम
बिट सोच क्या है? बीबीसी माइक्रोबिट के साथ एक सरल अनुमान लगाने वाला गेम बनाएं!: 10 कदम

वीडियो: बिट सोच क्या है? बीबीसी माइक्रोबिट के साथ एक सरल अनुमान लगाने वाला गेम बनाएं!: 10 कदम

वीडियो: बिट सोच क्या है? बीबीसी माइक्रोबिट के साथ एक सरल अनुमान लगाने वाला गेम बनाएं!: 10 कदम
वीडियो: Hex Game 03: Will it Sell? 2024, नवंबर
Anonim
बिट सोच क्या है? बीबीसी माइक्रोबिट के साथ एक सरल अनुमान लगाने वाला गेम बनाएं!
बिट सोच क्या है? बीबीसी माइक्रोबिट के साथ एक सरल अनुमान लगाने वाला गेम बनाएं!

कई ऑनलाइन लेखों में उनके बारे में सकारात्मक समीक्षा पढ़ने के बाद मैंने कुछ बीबीसी माइक्रोबिट्स को उठाया।

बीआईटी के साथ खुद को परिचित करने के प्रयास में, मैंने कुछ घंटों के लिए ऑनलाइन माइक्रोसॉफ्ट ब्लॉक्स एडिटर के साथ खेला और एक सरल अनुमान लगाने वाला गेम लेकर आया।

इस IBLE में हम खेल के नियमों के बारे में बात करेंगे और ब्लॉक संपादक में कोड के विभिन्न ब्लॉकों में इकट्ठे किए गए कार्यों के माध्यम से नेविगेट करेंगे।

अंत में, उत्साहित दर्शक ऑनलाइन सिम्युलेटर पर नेविगेट कर सकते हैं और इस सरल गेम को एक शॉट दे सकते हैं।

आएँ शुरू करें।

चरण 1: आरंभ करने से पहले…

आरंभ करने से पहले…
आरंभ करने से पहले…
आरंभ करने से पहले…
आरंभ करने से पहले…

हार्डवेयर

बीबीसी माइक्रोबिट बोर्ड से खुद को परिचित करना आसान है। इस IBLE के लिए, आपको केवल यह जानना होगा कि यह एक छोटा बोर्ड है जिसमें 2 पुश बटन हैं, छोटे LED की एक सरणी है, और एक माइक्रो-USB सॉकेट है जो बिजली की आपूर्ति और बोर्ड पर एक प्रोग्राम लोड करने के साधन के रूप में कार्य करता है।.

छोटे एल ई डी की सरणी को विभिन्न पैटर्न में प्रकाश में लाने के लिए प्रोग्राम किया जा सकता है।

ध्यान दें:

इस IBLE के लिए आपको भौतिक बोर्ड की आवश्यकता नहीं है! आपके द्वारा ऑनलाइन विकसित किए गए कोड का परीक्षण करने के लिए बीबीसी माइक्रोबिट साइट में एक ऑनलाइन सिम्युलेटर है।

सॉफ्टवेयर

यह IBLE बीबीसी माइक्रोबिट और/या ऑनलाइन ब्लॉक्स संपादक के साथ आरंभ करने के बारे में विस्तार से नहीं बताता है।

दर्शकों को अगले चरणों पर आगे बढ़ने से पहले बीबीसी माइक्रोबिट संसाधन का पता लगाने के लिए प्रोत्साहित किया जाता है।

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

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

चरण 2: अनुमान लगाने के खेल के नियम

अनुमान लगाने के खेल के नियम
अनुमान लगाने के खेल के नियम

खेल के नियम इस प्रकार हैं:

  1. पावर अप करने पर, बीआईटी एक नंबर के बारे में सोचता है और मानव खिलाड़ी को चुनौती देता है कि वह अपने एलईडी पैनल पर एक संदेश प्रिंट करके यह अनुमान लगाए कि वह नंबर क्या है, और एक उत्तर की प्रतीक्षा करता है
  2. खिलाड़ी अनुमान लगाता है और बाएं पुश बटन (ए) को उत्तर के रूप में कई बार धक्का देता है - उदाहरण, यदि खिलाड़ी ने 5 अनुमान लगाया है, तो बटन को 5 बार धक्का दिया जाता है
  3. BIT को उत्तर सबमिट करने के लिए, खिलाड़ी दाएँ पुश बटन (B) को एक बार दबाता है!
  4. यदि खिलाड़ियों का अनुमान सही है, तो खिलाड़ी एक अंक प्राप्त करता है, यदि नहीं तो बीआईटी को एक अंक मिलता है
  5. यदि एक खिलाड़ी सीमा के बाहर किसी संख्या का अनुमान लगाता है, तो दूसरा खिलाड़ी एक अंक प्राप्त करता है - बीआईटी अपने 'एलईडी डिस्प्ले पर एक बड़ा एक्स प्रदर्शित करता है और एक नई संख्या का अनुमान लगाने और चुनौती को दोहराने के लिए आगे बढ़ता है; उदाहरण: यदि बीआईटी ने आपको 1 और 5 के बीच की संख्या का अनुमान लगाने के लिए चुनौती दी है, और आपने 6 का अनुमान लगाया है, या यदि आपने शून्य का अनुमान लगाया है (बटन ए को धक्का देने से पहले बस बटन बी दबाकर), तो वह दौर अमान्य है
  6. चुनौती-प्रतिक्रिया तब तक जारी रहती है जब तक कि खिलाड़ियों में से कोई एक अधिकतम स्वीकार्य अंक हासिल नहीं कर लेता

एक नया खेल शुरू करना:

कभी भी एक नया गेम शुरू करने के लिए, बस बिट को एक झटके दें! या, बस बिजली को डिस्कनेक्ट और फिर से कनेक्ट करें।

चरण 3: ब्लॉक कार्यक्रम: चर

ब्लॉक कार्यक्रम: चर
ब्लॉक कार्यक्रम: चर

कार्यक्रम नीचे सूचीबद्ध उनके कार्यों से मेल खाने के लिए नामित कुछ चर का उपयोग करता है। ये चर ब्लॉक संपादक में चर प्रोग्रामिंग टैब पर क्लिक करके बनाए जा सकते हैं

BIT_SCORE - BIT द्वारा बनाए गए अंकों पर नज़र रखता है

bitGuessed - यह चर BIT द्वारा अनुमानित यादृच्छिक मान रखता है

चेक - जब सही पर सेट किया जाता है, तो बीआईटी जांचता है कि क्या खिलाड़ियों का अनुमान बीआईटी अनुमान के बराबर है

GAME_RANGE - यह संख्या सीमित करती है कि BIT या खिलाड़ी कितना अधिक अनुमान लगा सकता है

उदाहरण: यदि ६ पर सेट किया जाता है, तो कोई भी खिलाड़ी १ से ६. तक का अनुमान लगा सकता है

MSG - एक स्ट्रिंग जो खेल के संदर्भ के आधार पर विभिन्न संदेशों को प्रदर्शित करने के लिए बदली जाती है

PLAYER_SCORE - खिलाड़ी द्वारा बनाए गए अंकों पर नज़र रखता है

खिलाड़ी अनुमान - खिलाड़ी द्वारा अनुमानित संख्या इस चर में दर्ज की जाती है

ध्यान दें

आइटम नाम का पहला चर एक सामान्य और डिफ़ॉल्ट चर है और इसे अनदेखा किया जा सकता है

चरण 4: कार्य

कार्य
कार्य

सीखने की प्रक्रिया के हिस्से के रूप में और बेहतर संगठन के लिए, कोड को कई कार्यों में व्यवस्थित किया गया था जिन्हें मुख्य कार्यक्रम में बुलाया या लागू किया जा सकता था। चर के रूप में, उन्नत> फ़ंक्शन प्रोग्रामिंग टैब पर क्लिक करके फ़ंक्शन बनाया और एक्सेस किया जा सकता है।

नीचे कार्यों का संक्षिप्त विवरण दिया गया है:

घोषणा विजेता - यह फ़ंक्शन विजेता खिलाड़ी को संबोधित विजेता संदेश को प्रिंट करता है

doChallenge - वह फ़ंक्शन जिसे BIT किसी संख्या का अनुमान लगाने के लिए कॉल करता है और खिलाड़ी को चुनौती देता है

showBadGuess - एलईडी पैनल पर एक विशाल एक्स के साथ एक संदेश प्रदर्शित करता है यदि दोनों खिलाड़ियों में से किसी एक ने सीमा के बाहर अनुमान लगाया है

शोलोज़ - कहा जाता है यदि बीआईटी खिलाड़ी पर चुनौती का एक दौर जीतता है

शोमैसेज - एक निर्धारित सीमा के भीतर एक संख्या का अनुमान लगाने के लिए खिलाड़ी को चुनौती देने के लिए एक संदेश प्रस्तुत करता है

showWin - को तब कहा जाता है जब खिलाड़ी BIT. पर अनुमान लगाने का दौर जीतता है

चरण 5: प्रोग्राम स्टार्टअप और शेक इवेंट और इवेंट हैंडलर

प्रोग्राम स्टार्टअप और शेक इवेंट्स और इवेंट हैंडलर्स
प्रोग्राम स्टार्टअप और शेक इवेंट्स और इवेंट हैंडलर्स

"ऑन स्टार्ट" और "ऑन शेक" इवेंट हैंडलर हैं जिन्हें क्रमशः "स्टार्ट" इवेंट और "शेक" इवेंट होने पर बुलाया जाता है। जैसा कि ब्लॉक कोड से देखा जा सकता है, क्या होता है जब इन दो ईवेंट हैंडलर्स को कॉल किया जाता है जो लगभग समान होते हैं:

  • खेल शुरू होने पर संदेश प्रदर्शित करने के लिए शोमैसेज () फ़ंक्शन को कहा जाता है
  • संदेश प्रदर्शित होने के बाद 650 मिली-सेकंड का एक संक्षिप्त विराम होता है
  • doChallenge () फ़ंक्शन को कॉल किया जाता है जिसमें BIT एक संख्या का अनुमान लगाता है और मानव खिलाड़ी द्वारा अनुमान प्रस्तुत करने की प्रतीक्षा करता है

हम अगले चरण में दो कार्यों को शामिल करेंगे।

उस ने कहा, "ऑन स्टार्ट" और "ऑन शेक" इवेंट हैंडलर के बीच मूलभूत अंतर हैं:

  1. "ऑन स्टार्ट" इवेंट हैंडलर हर बार बीआईटी शुरू होने पर चलता है - जैसे कि बीआईटी को बिजली को डिस्कनेक्ट और रीकनेक्ट करने में
  2. कुछ चीजें जो प्रोग्राम के शुरू होने पर केवल एक बार होनी चाहिए, उन्हें "ऑन स्टार्ट" में परिभाषित किया गया है और पूरे प्रोग्राम में कहीं नहीं
  3. ऐसी ही एक चीज GAME_RANGE वैरिएबल को इनिशियलाइज़ कर रही है - इस मामले में, इसे 6 से इनिशियलाइज़ किया गया है, जिसका अर्थ है कि खिलाड़ी 1 और 6 के बीच की संख्या का अनुमान लगा सकते हैं।
  4. चूंकि "ऑन स्टार्ट" एक बुनियादी बीआईटी फ़ंक्शन है, इसमें कोई आश्चर्य की बात नहीं है कि यह ब्लॉक संपादक के मूल प्रोग्रामिंग टैब से पहुंचा जा सकता है
  5. दूसरी ओर "ऑन शेक" एक इवेंट हैंडलर है जिसे जब भी उपयोगकर्ता बीआईटी को एक त्वरित शेक के रूप में इनपुट प्रदान करता है तो उसे कॉल किया जाता है
  6. इसलिए, "ऑन शेक" ईवेंट हैंडलर ब्लॉक संपादक के इनपुट प्रोग्रामिंग टैब के अंदर पाया जा सकता है

चरण 6: स्टार्टअप संदेश और चुनौती कार्य

स्टार्टअप संदेश और चुनौती कार्य
स्टार्टअप संदेश और चुनौती कार्य
स्टार्टअप संदेश और चुनौती कार्य
स्टार्टअप संदेश और चुनौती कार्य
स्टार्टअप संदेश और चुनौती कार्य
स्टार्टअप संदेश और चुनौती कार्य

शोमैसेज () स्टार्टअप मैसेज फंक्शन एक साधारण फंक्शन है जो एक स्पष्ट स्क्रीन कमांड के साथ बीआईटी एलईडी पैलेट को साफ करता है और एक स्क्रॉलिंग संदेश प्रदर्शित करता है जो खिलाड़ी को एक संख्या का अनुमान लगाने के लिए चुनौती देता है।

जैसा कि शोमैसेज फ़ंक्शन ब्लॉक से देखा गया है, स्ट्रिंग के कुछ निश्चित टुकड़ों को एक साधारण संदेश प्रदर्शित करने के लिए GAME_RANGE चर में एक साथ जोड़ा जाता है जो कहता है:

अनुमान 0 - 6!

प्रत्येक चुनौती दौर की शुरुआत में doChallenge() फ़ंक्शन को कॉल किया जाता है, और इसलिए doChallenge फ़ंक्शन ब्लॉक से देखा गया निम्न कार्य करता है:

  1. मानव खिलाड़ी से एक नया इनपुट स्वीकार करने से पहले खिलाड़ी अनुमान चर को शून्य पर प्रारंभ करता है
  2. CHECK चर को असत्य में प्रारंभ करता है - जिसका अर्थ है कि दौर शुरू होने वाला है और दोनों खिलाड़ियों द्वारा अनुमानित संख्याओं की तुलना करने का समय अभी नहीं है
  3. अगला, और सबसे महत्वपूर्ण, बीआईटी GAME_RANGE द्वारा परिभाषित सीमा के भीतर एक यादृच्छिक संख्या चुनता है और इसे बिटगेस्ड चर में रिकॉर्ड करता है
  4. अंत में, एलईडी पैलेट एक प्रश्न चिह्न प्रतीक के साथ जलाया जाता है जो मानव खिलाड़ी को बीआईटी चुनौती के जवाब में इनपुट के लिए प्रेरित करता है!

ध्यान दें

यदि पिछले चरण में चर्चा के अनुसार GAME_RANGE चर मान बदल दिया गया है, तो आपका गेम कुछ अलग दिख सकता है और कार्य कर सकता है।

ज्वाइन फंक्शन एक स्ट्रिंग फंक्शन है और इसे ब्लॉक्स एडिटर के टेक्स्ट प्रोग्रामिंग टैब से एक्सेस किया जा सकता है

चरण 7: बटन एक क्लिक घटना - बीआईटी चुनौती का जवाब

बटन एक क्लिक घटना - बीआईटी चुनौती का जवाब!
बटन एक क्लिक घटना - बीआईटी चुनौती का जवाब!

एक बार जब बीआईटी की एलईडी स्क्रीन पर बड़ा प्रश्न चिह्न दिखाई देता है, तो मानव खिलाड़ी के लिए चुनौती का जवाब बस निम्नलिखित करना है:

  1. अनुमान लगाएं कि बीआईटी 0 और 6 के बीच कौन सी संख्या सोच रहा होगा
  2. जितनी बार आपका उत्तर है उतनी बार बटन ए दबाएं - उदाहरण यदि आपका उत्तर 3 है, तो बटन ए को 3x बार दबाएं

जाहिर है, बटन दबाना एक उपयोगकर्ता इनपुट है और इसलिए "ऑन बटन" ईवेंट हैंडलर ब्लॉक संपादक के इनपुट प्रोग्रामिंग टैब के माध्यम से सुलभ है। हर बार, उपयोगकर्ता बटन ए दबाता है, यह ईवेंट हैंडलर निम्न कार्य करता है:

  • जब तक यह GAME_RANGE सीमा (इस मामले में 6) के भीतर है, तब तक खिलाड़ी अनुमान चर के मान को 1 से बढ़ाएँ
  • यदि खिलाड़ी 7 या उच्चतर सबमिट करता है, तो अनुमान अमान्य हो जाता है और खिलाड़ी अनुमान को शून्य पर रीसेट कर दिया जाता है, अनिवार्य रूप से खिलाड़ियों के अनुमान को अमान्य कर दिया जाता है

अगली कार्रवाई चुनौती के लिए प्रतिक्रिया प्रस्तुत करना है, जिसे हम अगले चरण में करेंगे।

चरण 8: बटन बी क्लिक इवेंट - बीआईटी चैलेंज के लिए प्रतिक्रिया सबमिट करें

बटन बी क्लिक इवेंट - बीआईटी चैलेंज का जवाब सबमिट करें!
बटन बी क्लिक इवेंट - बीआईटी चैलेंज का जवाब सबमिट करें!
बटन बी क्लिक इवेंट - बीआईटी चैलेंज का जवाब सबमिट करें!
बटन बी क्लिक इवेंट - बीआईटी चैलेंज का जवाब सबमिट करें!

मानव खिलाड़ी बीआईटी को एक बार बटन बी दबाकर उत्तर प्रस्तुत करता है। बटन बी "ऑन क्लिक" ईवेंट हैंडलर में कई चरण होते हैं जैसे ही बीआईटी को खिलाड़ियों के उत्तर मिलते हैं जैसा कि छवि में कोड मार्करों द्वारा दर्शाया गया है:

  1. CHECK फ्लैग ट्रू पर सेट है - बीआईटी के लिए खिलाड़ियों के अनुमान के साथ तुलना करने के लिए एक संकेत
  2. स्कोरिंग तभी आगे बढ़ती है जब दोनों खिलाड़ियों ने अनुमान लगाया हो कि शून्य से बड़ी संख्या और GAME_RANGE सीमा (6 में से) के भीतर है और यदि नहीं, तो शोबैडग्यूस () फ़ंक्शन को कहा जाता है - अच्छा अनुमान लगाने वाला खिलाड़ी एक अंक जीतता है, और खराब अनुमान लगाने वाला खिलाड़ी एक खो देता है!
  3. यदि खिलाड़ियों का अनुमान बीआईटी से मेल खाता है, तो शोविन () फ़ंक्शन कहा जाता है - खिलाड़ी इस दौर को जीतता है!
  4. यदि नहीं, तो शोलोज़ () फ़ंक्शन कहा जाता है - बीआईटी इस दौर को जीतता है!
  5. अनाउंसविनर () फ़ंक्शन द्वारा प्रत्येक राउंड के अंत में एक चेक किया जाता है यह देखने के लिए कि क्या दो खिलाड़ियों में से एक ने 3 अंक प्राप्त करके जीता है - यदि ऐसा है, तो खेल समाप्त हो गया है और अंतिम विजेता की घोषणा की गई है और सभी स्कोर और संदेश हैं रीसेट
  6. BIT doChallenge () फ़ंक्शन को कॉल करके एक चुनौती जारी करके खेल को फिर से शुरू करता है और खिलाड़ी के जवाब की प्रतीक्षा करता है और प्रक्रिया दोहराई जाती है

हम अगले चरणों में नए कार्यों पर चर्चा करेंगे।

रुकना! आप शून्य का अनुमान कैसे लगाते हैं?

  • यदि आप यादृच्छिक () गणित फ़ंक्शन को देखते हैं, तो आप देख सकते हैं कि इसका प्रारंभिक मान शून्य पर सेट है और इसे बदला नहीं जा सकता है।
  • इसलिए बीआईटी इस सीमा के परिणामस्वरूप शून्य का अनुमान लगाने और खिलाड़ी को चुनौती देने के लिए स्वतंत्र है
  • इसी तरह, मानव खिलाड़ी पहले बटन ए पर क्लिक किए बिना केवल बटन बी पर क्लिक करके शून्य अनुमान जमा कर सकता है!
  • यदि इसकी अनुमति दी जाती है तो मानव खिलाड़ी को खेलने के लिए कोई प्रयास नहीं करना पड़ता है और इसका कोई मतलब नहीं है!
  • इसलिए, इस सीमा की भरपाई बुलेट #2 द्वारा की गई है। ऊपर चर्चा की गई

चरण 9: जीत / हार और बाकी कार्य

जीत / हार और बाकी कार्य
जीत / हार और बाकी कार्य
जीत / हार और बाकी कार्य
जीत / हार और बाकी कार्य
जीत / हार और बाकी कार्य
जीत / हार और बाकी कार्य

इन सभी कार्यों को बटन बी "ऑन क्लिक" ईवेंट हैंडलर द्वारा पिछले चरण में देखा गया है।

ये फ़ंक्शन बहुत सीधे आगे हैं और इस समय तक आपको उपयुक्त नामित चर और ब्लॉक संपादक की दृश्य विशेषताओं के संयोजन द्वारा बनाए गए कोड की सहज और कथात्मक प्रकृति से परिचित होना चाहिए।

  1. शोविन () फ़ंक्शन एक संदेश प्रदर्शित करता है जो इंगित करता है कि खिलाड़ी ने चुनौती के इस दौर को जीत लिया है और PLAYER_SCORE चर को 1 से बढ़ा देता है
  2. इसी तरह, शोलोज () फ़ंक्शन दिखाता है कि खिलाड़ी ने गलत अनुमान लगाया है और BIT_SCORE चर को 1 से बढ़ाकर BIT को एक अंक प्रदान करता है।
  3. शोबैडग्यूस () फ़ंक्शन स्क्रीन पर एक बड़ा एक्स प्रदर्शित करता है जो दर्शाता है कि खिलाड़ियों में से एक ने गलत अनुमान लगाया है (या तो 0 या 6 से अधिक का) - इस मामले में खराब खिलाड़ी एक अंक खो देता है, और दूसरा एक अंक प्राप्त करता है!

और अंत में, अनाउंसविनर () फ़ंक्शन यह घोषणा करने का कार्य करता है कि 3 राउंड की चुनौती/प्रतिक्रिया के बाद भव्य विजेता कौन है:

  • PLAYER_SCORE और BIT_SCORE स्कोर वैरिएबल को रीसेट करना
  • इस IBLE के पिछले चरण (6) में चर्चा किए गए शोमैसेज () स्टार्टअप फ़ंक्शन को कॉल करके कुछ समय के लिए रुकना और एक नया गेम शुरू करना

अंत में, सिम्युलेटर और कोड पर!

चरण 10: सिम्युलेटर और कोड

सिम्युलेटर और कोड
सिम्युलेटर और कोड

कोड यहां स्थित ऑनलाइन सिम्युलेटर में चल रहा है

  • सिम्युलेटर पृष्ठ के नीचे बाईं ओर स्थित है
  • वैकल्पिक रूप से, यदि आपके पास बीबीसी माइक्रोबिट काम में है तो कोड डाउनलोड करने के लिए डाउनलोड बटन का उपयोग किया जा सकता है
  • जैसा कि IBLE की शुरुआत में उल्लेख किया गया है, आपको ब्लॉक संपादक में कोड बनाने या अपने कोड का अनुकरण और परीक्षण करने के लिए बीबीसी माइक्रोबिट की आवश्यकता नहीं है, हालांकि यह मेरे जैसे जिज्ञासु व्यक्तियों के लिए काम नहीं करता है!

एडिट बटन पर एक नोट

  • यदि आपने देखा है, तो कोड सार्वजनिक डोमेन में है और शीर्ष-दाईं ओर संपादित करें बटन का उपयोग करके इसे संपादित करने का एक तरीका है
  • हालांकि, मैं ईमानदारी से अनुरोध करता हूं कि आप इस कोड की एक प्रति बनाएं और इसे अपनी आवश्यकताओं के अनुरूप बदल दें ताकि मूल संस्करण इस आईबीएलई के हित में संरक्षित रहे।

धन्यवाद! और खुश कोडिंग !!!:-)

सिफारिश की: