पाठ 4: [फॉरएवर] ब्लॉक का उपयोग करना
स्थितियों की बार-बार जाँच करना
जैसा कि पिछले पाठ में देखा गया, [If then] ब्लॉक केवल एक बार शर्तों की जांच करता है। [If then] ब्लॉक में निहित शर्तों की बार-बार जांच करने के लिए, एक [Forever] C ब्लॉक की आवश्यकता होती है। [फॉरएवर] ब्लॉक कंट्रोल श्रेणी का एक C ब्लॉक है जो इसके अंदर निहित व्यवहारों को हमेशा के लिए दोहराता है।

-
पिछले पाठ से Unit7Lesson3 प्रोजेक्ट लोड करें।

-
प्रोजेक्ट का नाम बदलें Unit7Lesson4.

-
एक [फॉरएवर] ब्लॉक को वर्कस्पेस में खींचें और उसे ब्लॉकों के ढेर के शीर्ष पर अटैच करें। ध्यान दें कि इसमें [Forever] ब्लॉक के अंदर मौजूद सभी चार [If then] ब्लॉक शामिल होंगे।

आपकी जानकारी के लिए
ब्लॉक को स्टैक के शुरुआत या मध्य में जोड़ने के लिए, ब्लॉक के ऊपरी हिस्से को स्टैक में वांछित स्थान के साथ संरेखित करना होता है।

नीचे दिए गए वीडियो में दिखाया गया है कि वर्तमान प्रोजेक्ट में चार [If then] ब्लॉक के चारों ओर [Forever ब्लॉक] कैसे जोड़ा जाता है। ध्यान दें कि [Forever] ब्लॉक का शीर्ष भाग [When started] और पहले [If then] ब्लॉक के ठीक बाद स्थित है। इसके बाद [फॉरएवर] ब्लॉक प्रोजेक्ट स्टैक में मौजूद सभी आगामी ब्लॉकों को घेर लेता है।
- अब जबकि [फॉरएवर] ब्लॉक को प्रोजेक्ट में जोड़ दिया गया है ताकि सभी [इफ देन] ब्लॉकों की शर्तों की लगातार जांच की जा सके, डिस्क मेज़ प्लेग्राउंड खोलें और प्रोजेक्ट चलाएं।
-
जब यह प्रोजेक्ट चलाया जाएगा, तो वीआर रोबोट डिस्क मेज़ प्लेग्राउंड को शुरू से अंत तक नेविगेट करेगा। वीआर रोबोट को जैसे ही लाल रंग दिखाई देगा, वह चलना बंद कर देगा।

-
पिछले पाठ के प्रोजेक्ट में, [If then] ब्लॉक के भीतर की शर्तों की जाँच केवल एक बार की गई थी। चूंकि [If then] ब्लॉक के भीतर की स्थितियों की जांच केवल एक बार की गई थी, इसलिए वीआर रोबोट लगातार आगे बढ़ता रहा क्योंकि रंग का पता न चलने की स्थिति को TRUE के रूप में रिपोर्ट किया गया था।

-
अब जबकि [फॉरएवर] ब्लॉक जोड़ दिया गया है, [इफ देन] सी ब्लॉक की प्रत्येक शर्त की बार-बार जांच की जाएगी। प्रोजेक्ट के प्रवाह के दौरान, यदि [If then] C ब्लॉक की शर्त TRUE है, तो [If then] C ब्लॉक के अंदर के ब्लॉक निष्पादित होते हैं। यदि [If then] C ब्लॉक की स्थिति FALSE है, तो [If then] C ब्लॉक के अंदर के ब्लॉक छोड़ दिए जाते हैं, और प्रोजेक्ट का प्रवाह स्टैक में अगले ब्लॉक पर जारी रहता है। इससे वीआर रोबोट को एक निश्चित रंग का पता चलने पर मुड़ने या रुकने जैसे विशिष्ट व्यवहार करने में मदद मिलती है।

-
[If then] ब्लॉक का उपयोग [Forever] ब्लॉक के साथ यह सुनिश्चित करने के लिए किया जाता है कि स्थितियों की लगातार जाँच की जाती रहे।

स्विच ब्लॉक का उपयोग करना
यह स्विच [फॉरएवर] ब्लॉक है। स्विच पायथन कमांड फॉरएवर व्हाइल लूप बनाता है जहां शर्त सत्य है। लूप के भीतर मौजूद कमांड तब तक अनंत काल तक दोहराई जा सकती हैं, क्योंकि शर्त हमेशा सत्य होती है।
