From Test-Scratch-Wiki
() और () ब्लॉक एक ऑपरेटर्स ब्लॉक और एक बूलियन ब्लॉक है। यह ब्लॉक दो बूलियन ब्लॉकों को जोड़ता है, इसलिए 'ट्रू' परिणाम देने के लिए दोनों का 'ट्रू' होना आवश्यक है। अगर वे दोनों 'ट्रू' हैं, तो ब्लॉक 'ट्रू' रिटर्न करेगा; अगर एक ही 'ट्रू' हो या कोई भी 'ट्रू' न हो, तो यह 'फ़ॉल्स' रिपोर्ट करेगा। इस ब्लॉक को अपने अंदर स्टैक किया जा सकता है, जिसका उपयोग अधिक स्थितियों का परीक्षण करने के लिए किया जा सकता है।
उदाहरण उपयोग
इस ब्लॉक का उपयोग यह जाँचने के लिए किया जाता है कि क्या दो या अधिक स्थितियाँ एक ही समय में सत्य हैं। इसके कुछ मामले हैं:
- स्वास्थ्य खोना अगर "मैं आग को छू रहा हूँ और मेरी ढाल ऊपर नहीं है।"
forever if <<touching (fire v)?> and <not <(costume [name v]) = [character with shield]>>> then change [lives v] by (-1)
- मान लें कि कोई बटन क्लिक किया गया है अगर माउस इसे छू रहा है और माउस नीचे है।
forever if <<mouse down?> and <touching (mouse-pointer v)?>> then say [a button is clicked] end end
- जाँच करना कि क्या अंतिम स्तर को हराया गया है और खिलाड़ी के पास पर्याप्त अंक हैं
forever if <<(level) = (20)> and <(score) > (999)>> :: control C say [Congratulations! You beat the game!] for (5) seconds stop [all v]
कारगर युक्तियाँ
इस ब्लॉक को निम्न में से किसी एक के साथ दोहराया जा सकता है:
not <<not <. . .:: grey>> or <not <. . .:: grey>>>
set [and v] to [false] if <. . .::grey> then if <. . .::grey> then set [and v] to [true] end end
<(<. . .:: grey> * <. . .:: grey>) = (1)>
यह काम करता है क्योंकि झूठे बूलियन का मूल्यांकन ० के रूप में किया जाता है, और सच्चे बूलियन का मूल्यांकन १ के रूप में किया जाता है।