बदलना#

परिचय#

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

पायथन कमांड, मेथड और ऑपरेटर टाइप करना सीखने के लिए, VEXcode AIR पायथन API देखें।

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

नीचे सभी स्विच ब्लॉक की सूची दी गई है:

स्विच ब्लॉक्स — ब्लॉक्स प्रोजेक्ट में पायथन कोड जोड़ें।

  • स्टैक — अन्य स्टैक ब्लॉकों के साथ अनुक्रम में चलने वाले पायथन कमांड टाइप करने के लिए एक स्थान प्रदान करता है।

  • सी ब्लॉक — पायथन नियंत्रण कोड टाइप करने के लिए एक स्थान प्रदान करता है, जैसे कि if, while, या for कथन।

  • सी एक्सपेंडेबल — एकाधिक शाखाओं के साथ पायथन नियंत्रण कोड टाइप करने के लिए एक स्थान प्रदान करता है, जैसे if, elif, या else।

  • बूलियन — पायथन कोड टाइप करने के लिए एक स्थान प्रदान करता है जो True या False लौटाता है।

  • रिपोर्टर — पायथन कोड टाइप करने के लिए एक स्थान प्रदान करता है जो एक मान लौटाता है।

  • हैट — पायथन फ़ंक्शन को परिभाषित करने के लिए एक स्थान प्रदान करता है।

ढेर#

स्टैक ब्लॉक पायथन कमांड टाइप करने के लिए एक स्थान प्रदान करता है जो अन्य स्टैक ब्लॉकों के साथ क्रम में चलते हैं।

स्टैक ब्लॉक#
[] :: custom-switch

एक स्टैक ब्लॉक में पायथन कोड की एक पंक्ति या कई पंक्तियाँ हो सकती हैं।

शुरू होने पर, यह उड़ान भरने, प्रतीक्षा करने और फिर उतरने के लिए स्टैक ब्लॉक का उपयोग करता है।#
जब शुरू हो
[Take off, wait 1 second, then land.]
[drone.take_off(500)] :: custom-switch
[1] सेकंड प्रतीक्षा करें
उतरें ▶

सी ब्लॉक#

The C Block provides a space to type Python control code, such as if, while, or for statements. Blocks placed inside the C Block run as part of that Python control structure.

सी ब्लॉक#
if [] :: custom-switch
अंत

पायथन कंट्रोल कोड जिसे सी ब्लॉक में उपयोग किया जा सकता है, उसमें निम्नलिखित शामिल हैं:

शुरू होने पर, बटन 7 दबाए जाने तक कंट्रोलर के साथ चलने के लिए C ब्लॉक का उपयोग करता है।#
जब शुरू हो
[Move with the controller until button 7 is pressed.]
[500] [mm v] की ऊंचाई पर उड़ान भरें ▶
if [while not controller.button7.pressing():] :: custom-switch
कंट्रोलर से चलाएं
अंत
उतरें ▶

सी विस्तार योग्य#

C एक्सपेंडेबल ब्लॉक में आप कई शाखाओं वाले पाइथन कंट्रोल कोड टाइप कर सकते हैं, जैसे कि if, elif, या elseप्लस तीर का चयन करके अतिरिक्त शाखाएँ जोड़ी जा सकती हैं।

C विस्तार योग्य ब्लॉक#
if [] :: custom-switch-expand
अंत

पायथन कंट्रोल कोड जिसे सी एक्सपेंडेबल ब्लॉक में उपयोग किया जा सकता है, उसमें निम्नलिखित शामिल हैं:

शुरू होने पर, यह ऊपर चढ़ने, नीचे उतरने या हवा में मंडराने के लिए C एक्सपेंडेबल ब्लॉक का उपयोग करता है।#
जब शुरू हो
[Climb up or down with buttons 5 and 6.]
[500] [mm v] की ऊंचाई पर उड़ान भरें ▶
हमेशा
if [if controller.button5.pressing():] :: custom-switch-expand
[ऊपर v] दिशा में चढ़ें
else [elif controller.button6.pressing():] :: custom-switch-expand
[नीचे v] दिशा में चढ़ें
else [else:] :: custom-switch-expand
होवर
अंत
अंत

बूलियन#

बूलियन ब्लॉक पायथन कोड टाइप करने के लिए जगह प्रदान करता है जो True या Falseलौटाता है। इसे षट्कोणीय इनपुट वाले ब्लॉकों के अंदर रखा जा सकता है।

बूलियन ब्लॉक#
<[] :: custom-switch>

एक बूलियन ब्लॉक में पायथन की शर्त हो सकती है।

पायथन शर्त के साथ बूलियन ब्लॉक#
<[controller.button7.pressing()] :: custom-switch>

एक बूलियन ब्लॉक तार्किक ऑपरेटरों का भी उपयोग कर सकता है:

पायथन लॉजिकल ऑपरेटर के साथ बूलियन ब्लॉक#
<[controller.button5.pressing() and controller.button7.pressing()] :: custom-switch>

एक बूलियन ब्लॉक तुलना ऑपरेटरों का उपयोग करके मानों की तुलना कर सकता है:

  • से बड़ा: >

  • से कम: <

  • बराबर: ==

  • अन्य तुलना ऑपरेटरों में <=, !=, और >= शामिल हैं

पायथन तुलना ऑपरेटर के साथ बूलियन ब्लॉक#
<[drone.inertial.get_heading()> 100] :: custom-switch>
शुरू होने पर, यह बूलियन ब्लॉक का उपयोग करके तब तक दोहराता है जब तक कि बटन 7 को दबाया नहीं जाता।#
जब शुरू हो
[Move with the controller until button 7 is pressed.]
[500] [mm v] की ऊंचाई पर उड़ान भरें ▶
<[controller.button7.pressing()] :: custom-switch> होने तक दोहराएं
कंट्रोलर से चलाएं
अंत
उतरें ▶

रिपोर्टर#

रिपोर्टर ब्लॉक पाइथन कोड टाइप करने के लिए जगह प्रदान करता है जो एक मान लौटाता है। इसे गोलाकार इनपुट वाले ब्लॉकों के भीतर रखा जा सकता है।

रिपोर्टर ब्लॉक#
([] :: custom-switch)

एक रिपोर्टर ब्लॉक में पायथन कोड हो सकता है जो एक मान लौटाता है।

रिपोर्टर ब्लॉक जिसमें पायथन कोड है जो एक मान लौटाता है#
([drone.get_altitude()] :: custom-switch)

रिपोर्टर ब्लॉक में गणितीय ऑपरेटरों का उपयोग किया जा सकता है:

  • जोड़: +

  • घटाव: -

  • विभाजन: /

  • गुणन: *

पायथन जोड़ के साथ रिपोर्टर ब्लॉक#
([drone.get_altitude() + 45] :: custom-switch)
शुरू होने पर, यह ड्रोन द्वारा 3 सेकंड तक ऊपर चढ़ने के बाद उसकी ऊंचाई को प्रिंट करता है।#
जब शुरू हो
[Display the altitude after climbing for 3 seconds.]
[500] [mm v] की ऊंचाई पर उड़ान भरें ▶
[ऊपर v] दिशा में चढ़ें
[3] सेकंड प्रतीक्षा करें
स्क्रीन पर ([drone.get_altitude()] :: custom-switch) प्रिंट करें ▶
उतरें ▶

टोपी#

Hat ब्लॉक पाइथन फ़ंक्शन को परिभाषित करने के लिए एक स्थान प्रदान करता है। Hat के अंतर्गत संलग्न ब्लॉक उस फ़ंक्शन का मुख्य भाग बन जाते हैं।

टोपी ब्लॉक#
[] :: hat custom-switch

Hat ब्लॉक में एक पायथन फ़ंक्शन की परिभाषा लिखें। पैरामीटर कोष्ठकों के अंदर लिखें। यदि फ़ंक्शन पैरामीटर का उपयोग नहीं करता है, तो खाली कोष्ठकों का उपयोग करें।

पायथन फ़ंक्शन परिभाषा के साथ हैट ब्लॉक#
[def function_name(parameter):] :: hat custom-switch
शुरू होने पर, यह एक Hat ब्लॉक का उपयोग करके एक फ़ंक्शन को परिभाषित और कॉल करता है।#
[def take_off_500():] :: hat custom-switch
[Define a custom function using a Hat block.]
[500] [mm v] की ऊंचाई पर उड़ान भरें ▶

जब शुरू हो
[take_off_500()] :: custom-switch