नियंत्रण#
परिचय#
VEXcode VR में कंट्रोल ब्लॉक लूप, कंडीशन को हैंडल करके और ब्लॉक को चलने से रोककर प्रोजेक्ट के फ्लो को मैनेज करते हैं।
लूप वह स्थिति है जब कोई कंप्यूटर एक ही चरण या चरणों के समूह को तब तक बार-बार दोहराता है जब तक उसे रुकने का निर्देश नहीं दिया जाता। स्थिति वह नियम है जिसकी जाँच करके कंप्यूटर यह तय करता है कि आगे क्या करना है। उदाहरण के लिए, यदि कोई सेंसर किसी वस्तु का पता लगाता है तो रोबोट आगे बढ़ सकता है।
नीचे उपलब्ध ब्लॉकों की सूची दी गई है:
प्रतीक्षा – एक विशिष्ट अवधि के लिए ब्लॉकों को चलने से रोकता है।
इंतज़ार करो – निर्दिष्ट शर्त पूरी होने तक ब्लॉक को चलने से रोकता है।
repeat – ब्लॉकों के एक सेट को एक विशिष्ट संख्या में दोहराता है।
हमेशा – ब्लॉकों के एक सेट को अनिश्चित काल तक दोहराता है।
repeat until – एक शर्त पूरी होने तक ब्लॉकों के एक सेट को दोहराता है।
while – एक शर्त सही रहने तक ब्लॉकों के एक सेट को दोहराता है।
अगर – यदि कोई शर्त सही है तो ब्लॉकों का एक सेट चलाता है।
अगर / अन्यथा – यदि कोई शर्त सही है तो ब्लॉकों का एक सेट चलाता है, अन्यथा दूसरा चलाता है।
अगर / अन्यथा अगर / अन्यथा – कई शर्तों के आधार पर ब्लॉक के अलग-अलग सेट चलाता है।
break – repeat, forever, repeat until, या while लूप से तुरंत बाहर निकलता है।
प्रोजेक्ट रोकें – प्रोजेक्ट समाप्त करता है।
इंतज़ार#
वेट स्टैक ब्लॉक अगले ब्लॉक पर जाने से पहले एक निश्चित समय के लिए ब्लॉकों को चलने से रोक देता है।
(1) सेकंड प्रतीक्षा करें
पैरामीटर |
विवरण |
|---|---|
समय |
प्रतीक्षा करने का समय, धनात्मक पूर्णांक या दशमलव संख्या के रूप में सेकंड में। |
उदाहरण
जब शुरू हो :: hat events
[Move forward for one second, then stop.]
[आगे v] दिशा में चलाएं
(1) सेकंड प्रतीक्षा करें
चलाना बंद करें
जब तक इंतजार#
वेट अंटिल स्टैक ब्लॉक, निर्दिष्ट शर्त पूरी होने तक ब्लॉकों को चलने से रोकता है, उसके बाद ही अगले ब्लॉक पर जाता है।
<> होने तक प्रतीक्षा करें
पैरामीटर |
विवरण |
|---|---|
स्थिति |
अगले ब्लॉक पर जाने से पहले जिस शर्त को पूरा करना आवश्यक है। |
उदाहरण
जब शुरू हो :: hat events
[Move forward until a button is pressed, then stop.]
[आगे v] दिशा में चलाएं
<[LeftBumper v] दबाया गया?> होने तक प्रतीक्षा करें
चलाना बंद करें
दोहराना#
रिपीट सी ब्लॉक अपने अंदर के ब्लॉकों को एक निश्चित संख्या में बार-बार चलाता है।
[10] बार दोहराएं
अंत
पैरामीटर |
विवरण |
|---|---|
टाइम्स |
एक पूर्ण संख्या जो यह निर्धारित करती है कि रिपीट ब्लॉक कितनी बार चलेगा। |
उदाहरण
जब शुरू हो :: hat events
[Move in a square path.]
[4] बार दोहराएं
[आगे v] दिशा में [150] [mm v] चलाएं ▶
[दाएं v] दिशा में [90] डिग्री मुड़ें ▶
अंत
हमेशा के लिए#
यह हमेशा चलने वाला सी ब्लॉक अपने अंदर के ब्लॉकों को बिना रुके बार-बार चलाता रहता है।
हमेशा
अंत
पैरामीटर |
विवरण |
|---|---|
इस ब्लॉक में कोई पैरामीटर नहीं है। |
उदाहरण
जब शुरू हो :: hat events
[Move in a square path forever.]
हमेशा
[आगे v] दिशा में [150] [mm v] चलाएं ▶
[दाएं v] दिशा में [90] डिग्री मुड़ें ▶
अंत
दोहराओ जब तक#
रिपीट अंटिल ब्लॉक निर्दिष्ट शर्त पूरी न होने तक इसके अंदर के ब्लॉकों को बार-बार चलाता है।
<> होने तक दोहराएं
अंत
पैरामीटर |
विवरण |
|---|---|
स्थिति |
एक एक्सप्रेशन या वेरिएबल जिसकी जाँच प्रत्येक लूप से पहले की जाती है। यदि यह False है, तो लूप दोहराना जारी रहता है। यदि यह True है, तो लूप रुक जाता है। |
उदाहरण
जब शुरू हो :: hat events
[Move the pen until the bumper is pressed.]
[आगे v] दिशा में चलाएं
<[LeftBumper v] दबाया गया?> होने तक दोहराएं
पेन मूव [नीचे v]
(0.5) सेकंड प्रतीक्षा करें
पेन मूव [ऊपर v]
(0.5) सेकंड प्रतीक्षा करें
अंत
(0.5) सेकंड प्रतीक्षा करें
चलाना बंद करें
जबकि#
while C ब्लॉक निर्दिष्ट शर्त पूरी होने तक अंदर के ब्लॉकों को बार-बार चलाता है।
जबकि <>
अंत
पैरामीटर |
विवरण |
|---|---|
स्थिति |
एक एक्सप्रेशन या वेरिएबल जिसकी जाँच प्रत्येक लूप से पहले की जाती है। यदि यह True है, तो ब्लॉक दोहराते रहते हैं। यदि यह False है, तो लूप रुक जाएगा। |
उदाहरण
जब शुरू हो :: hat events
[Display a message while moving.]
[आगे v] दिशा में [300] [mm v] चलाएं ◀ और प्रतीक्षा न करें
जबकि <ड्राइव चल रही है?>
[Moving...] प्रिंट करें ▶
(0.1) सेकंड प्रतीक्षा करें
सभी पंक्तियां साफ़ करें
अंत
[Done!] प्रिंट करें ▶
अगर#
if ब्लॉक के भीतर के ब्लॉक तभी चलते हैं जब शर्त True होती है।
यदि <> तो
अंत
पैरामीटर |
विवरण |
|---|---|
स्थिति |
एक एक्सप्रेशन या वेरिएबल जिसकी जाँच स्टेटमेंट चलने पर की जाती है। यदि यह True है, तो if ब्लॉक के अंदर के ब्लॉक चलेंगे। यदि यह False है, तो ब्लॉक छोड़ दिए जाएँगे। |
उदाहरण
जब शुरू हो :: hat events
[Turn in a circle if the bumper is pressed.]
[आगे v] दिशा में चलाएं
हमेशा
यदि <[LeftBumper v] दबाया गया?> तो
[पीछे v] दिशा में (200) [mm v] चलाएं ▶
[दाएं v] दिशा में (360) डिग्री मुड़ें ▶
अंत
चलाना बंद करें
अंत
यदि / अन्यथा#
if / else C ब्लॉक यह निर्धारित करता है कि शर्त True है या False, इसके आधार पर ब्लॉकों का कौन सा सेट चलेगा।
यदि <> तो
अन्यथा
अंत
पैरामीटर |
विवरण |
|---|---|
स्थिति |
एक एक्सप्रेशन या वेरिएबल जिसकी जाँच स्टेटमेंट चलने पर की जाती है। यदि यह True है, तो if ब्लॉक के अंदर के ब्लॉक चलेंगे। यदि यह False है, तो else ब्लॉक के अंदर के ब्लॉक चलेंगे। |
उदाहरण
जब शुरू हो :: hat events
[If bumper pressed, reverse and turn right.]
हमेशा
यदि <[LeftBumper v] दबाया गया?> तो
[पीछे v] दिशा में (100) [mm v] चलाएं ▶
[दाएं v] दिशा में (90) डिग्री मुड़ें ▶
अन्यथा
[आगे v] दिशा में चलाएं
अंत
यदि / अन्यथा यदि / अन्यथा#
if / else if / else विस्तार योग्य C ब्लॉक शर्तों के आधार पर यह चयन करता है कि ब्लॉकों का कौन सा सेट चलेगा:
if अपने कोड के ब्लॉक को तब चलाता है जब शर्त True के रूप में मूल्यांकित होती है।
else if अतिरिक्त शर्तों की जाँच तभी करता है जब पिछली सभी शर्तें गलत साबित हों। एकाधिक else if कथनों का उपयोग किया जा सकता है।
else अपने कोड के ब्लॉक को तभी चलाता है जब पिछली कोई भी शर्त True के रूप में मूल्यांकित नहीं होती है।
यदि <> तो
अन्यथा यदि <> तो
अन्यथा
अंत
पैरामीटर |
विवरण |
|---|---|
स्थिति |
एक एक्सप्रेशन या वेरिएबल जिसकी जाँच स्टेटमेंट चलने पर की जाती है। पहली शर्त जो सही होती है, वह ब्लॉक्स के उस सेट को चलाती है। यदि सभी शर्तें गलत साबित होती हैं, तो एल्स ब्लॉक के अंदर के ब्लॉक्स चलेंगे। |
उदाहरण
जब शुरू हो :: hat events
[Turn right if the an Eye Sensor detects red, left if it detects green, and continue driving if anything else.]
हमेशा
यदि <[FrontEye v] [लाल v] पहचानता है?> तो
[दाएं v] दिशा में (90) डिग्री मुड़ें ▶
अन्यथा यदि <[FrontEye v] [हरा v] पहचानता है?> तो
[बाएं v] दिशा में (90) डिग्री मुड़ें ▶
अन्यथा
[आगे v] दिशा में चलाएं
अंत
अंत
तोड़ना#
ब्रेक स्टैक ब्लॉक लूप से तुरंत बाहर निकल जाता है। इस ब्लॉक का उपयोग रिपीट, रिपीट अंटिल, व्हाइल और फॉरएवर ब्लॉकों के भीतर किया जा सकता है। ब्रेक तब उपयोगी होता है जब प्रोजेक्ट के दौरान किसी घटना के आधार पर लूप को समय से पहले रोकना आवश्यक हो, जैसे कि बटन दबाना या सेंसर द्वारा किसी वस्तु का पता लगाना।
ब्रेक
पैरामीटर |
विवरण |
|---|---|
इस ब्लॉक में कोई पैरामीटर नहीं है। |
उदाहरण
जब शुरू हो :: hat events
[Stop turning after a button is pressed.]
हमेशा
[आगे v] दिशा में चलाएं
यदि <[LeftBumper v] दबाया गया?> तो
ब्रेक
अंत
अंत
चलाना बंद करें
परियोजना रोकें#
स्टॉप प्रोजेक्ट स्टैक ब्लॉक चल रहे प्रोजेक्ट को समाप्त करता है।
प्रोजेक्ट बंद करें
पैरामीटर |
विवरण |
|---|---|
इस ब्लॉक में कोई पैरामीटर नहीं है। |
उदाहरण
जब शुरू हो :: hat events
[Stop the project entirely after a button is pressed.]
हमेशा
[आगे v] दिशा में चलाएं
यदि <[LeftBumper v] दबाया गया?> तो
प्रोजेक्ट बंद करें
अंत
अंत