From Test-Scratch-Wiki
() = () ब्लॉक एक ऑपेरेटर्स ब्लॉक और बूलियन ब्लॉक है। यह ब्लॉक जाँचता है कि क्या पहली वैल्यू दूसरी वैल्यू के बराबर है। अगर दोनों वैल्यू बराबर हैं, तो यह 'ट्रू' रिटर्न करता है। अगर ऐसा नहीं है, तो यह 'फ़ॉल्स' रिटर्न करता है। यह कैपिटल और लोअरकेस अक्षरों को समान मानता है।
स्क्रैच १.३ और इससे पहले के वर्शन्स में, यह केवल अंकों को वैल्यू के रूप में ऐक्सेप्ट कर पाता था, जबकि टेक्सट चरों का इस्तेमाल हो सकता था।
लेकिन,अगर दोनों वैल्यूस् में बहुत बड़े अंक हैं और उनके बीच का अंतर बहुत कम है, तो यह ब्लॉक 'ट्रू' रिटर्न करता है। कुछ स्क्रैचर्स चाहते हैं, कि इसको फ़िक्स किया जाए।
उदाहरण उपयोग
इस ब्लॉक के आमतौर पर किए जाने वाले उपयोग नीचे दिए गए हैं-
- लिपि को तब तक के लिए रोकना तब तक वह किसी सर्टेन वैल्यू पर न पहुँचे
when flag clicked wait until <(score) = [10]> say [Good job!]
- उत्तर को चेक करने के लिए
when green flag clicked ask [Was my joke funny?] and wait if <(answer) = [yes]> then say [Thank you!] for (2) secs end
- चेक करना कि क्या बूलियन वैल्यू समान है
if < <mouse down?> = <touching (sprite 1 v)?> > then say [Either you are clicking and I am on sprite 1, or you are not clicking and I am not on sprite 1.] end
- वैल्यूओं कि तुलना करने के लिए
if <(x position) = (size)> then say [The sprite size and x position are equal.] for (5) seconds else say [The sprite size and x position are not equal.] for (5) seconds end
तुलना
अंकों की तुलना
यह ब्लॉक कभी-कभी बड़े अंकों के बारे में 'ट्रू' रिपोर्ट करेगा, तब भी जब वे समान न हों
<[100000000000000000] = [100000000000000001]> // 'ट्रू' रिपोर्ट करेगा
इस समस्या को अंक से पहले एक अक्षर डाल कर हल किया जा सकता है, जो स्क्रैच को अंक तुलना के बजाए टेक्सट तुलना का इस्तेमाल करने के लिए मज़बूर करता है:
<(join [a] (100000000000000000)) = (join [a] (100000000000000001))> // reports false
अक्षरों की तुलना
अक्षरों की तुलना केस सेन्सेटिव नहीं होती हैं।
<[a] = [a]> // 'ट्रू' रिपोर्ट करेगा <[a] = [A]> // 'ट्रू' रिपोर्ट करेगा
दूसरा तरीका
इस ब्लॉक को इस कोड से रेप्लिकेट किया जा सकता है:
<not < <(a) > (b)> or <(a) < (b) > > >
और एक तरीका:
delete all of [list v] add (a) to [list v] if <[list v] contains (b)> then set [result v] to [true] else set [result v] to [false] end