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
Cookies help us deliver our services. By using our services, you agree to our use of cookies.