From Test-Scratch-Wiki
वर्तमान () | |
current [year v]
| |
Category | महसूस |
Type | रिपोर्टर |
Introduced in | v१४८ (२.० अल्फा ) |
वर्तमान () ब्लॉक एक महसूस ब्लॉक और एक रिपोर्टर ब्लॉक है। यह तर्क के आधार पर या तो वर्तमान स्थानीय वर्ष, महीना, तिथि, सप्ताह का दिन, घंटा, मिनट या सेकंड की रिपोर्ट करता है। ब्लॉक उपयोगकर्ता के डिवाइस की घड़ी के आधार पर डेटा प्राप्त करता है और यह २४ घंटे के समय का उपयोग करता है। ब्लॉक को पहले स्क्रैच २.० अल्फा के शुरुआती संस्करणों में लोकल () कहा जाता था ताकि यह स्पष्ट हो सके कि यह उपयोगकर्ता के स्थानीय समय का उपयोग करता है।
यह स्क्रैच २.० में जोड़े गए दो दिनांक/समय ब्लॉकों में से एक है। दूसरा है २००० से दिन, जो १ जनवरी, २००० से दिनों की संख्या की रिपोर्ट करता है।
इसे मूल रूप से स्क्रैच २.० के v१५३ तक स्थानीय () कहा जाता था, जब इसका नाम बदलकर वर्तमान () कर दिया गया।
उदाहरण उपयोग
इस ब्लॉक का उपयोग निम्नलिखित में से कुछ तरीकों से किया जा सकता है:
- घड़ी या कैलेंडर बनाना
when gf clicked set [calendar v] to (join (current [month v]) (join [/] (join (current [date v]) (join [/] (current [year v]))))) forever if <<(current [minute v])<[10]> and <(current [second v])<[10]>> then say (join (current [hour v]) (join [:0] (join (current [minute v]) (join [:0] (current [second v]))))) else if <(current [minute v])<[10]> then say (join (current [hour v]) (join [:0] (join (current [minute v]) (join [:] (current [second v]))))) else if <(current [second v])<[10]> then say (join (current [hour v]) (join [:] (join (current [minute v]) (join [:0] (current [second v]))))) else say (join (current [hour v]) (join [:] (join (current [minute v]) (join [:] (current [second v])))))
- दिन के साथ पृष्ठभूमि बदलती रहती है
when gf clicked forever if <<(current [hour v]) > [5]> and < (current [hour v]) < [12]>> then // आप किसी भी समय का उपयोग कर सकते हैं जो आपको लगता है कि सुबह के समय के योग्य है। यह ६ से ११ बजे तक है। switch backdrop to (Morning v) else if <<(current [hour v]) > [11]> and < (current [hour v]) < [18]>> then // आप किसी भी समय का उपयोग कर सकते हैं जो आपको लगता है कि दोपहर के समय के रूप में योग्य है। यह १२ से १७ बजे तक है। switch backdrop to (Afternoon v) else switch backdrop to (Night v) // ये घंटे पिछले घंटों पर आधारित हैं। यह १८ - ५ बजे है। end end if <<(current [minute v])<[10]> and <(current [second v])<[10]>> then say (join (current [hour v]) (join [:0] (join (current [minute v]) (join [:0] (current [second v]))))) else if <(current [minute v])<[10]> then say (join (current [hour v]) (join [:0] (join (current [minute v]) (join [:] (current [second v]))))) else if <(current [second v])<[10]> then say (join (current [hour v]) (join [:] (join (current [minute v]) (join [:0] (current [second v]))))) else say (join (current [hour v]) (join [:] (join (current [minute v]) (join [:] (current [second v])))))
- किसी निश्चित तिथि से पहले या बाद में किसी चीज़ को अनुपलब्ध बनाना
if <(current [year v]) < [2019]> then change [points v] by (1000) else say [Sorry, but this feature is unavailable after 2018.] end
- उच्च स्कोर सूची पर टाइमस्टैम्प
if <(current [minute v])<[10]> then add (join (join (join (join (join (join (join [Day:](current [date v]))[ ])(current [hour v]))[:0])(current [minute v]))[|Highscore:])(Score)) to [Highscores List v] else add (join (join (join (join (join (join (join [Day:](current [date v]))[ ])(current [hour v]))[:])(current [minute v]))[|Highscore:])(Score)) to [Highscores List v]
![]() | जब आउटपुट १० से कम होता है, तो घंटा, मिनट और सेकंड ब्लॉक दोहरे अंक की संख्या के बजाय एकल अंक की अनपैडेड संख्या रिपोर्ट करेंगे, उदाहरण के लिए ०५:०९:०३ , ५:९:३ के रूप में दिखाई देगा। |
इसे निम्नलिखित स्क्रिप्ट से ठीक किया जा सकता है:
if <(current [hour v]) < [10]> then set [hour v] to (join [0] (current [hour v])) else set [hour v] to (current [hour v]) end if <(current [minute v]) < [10]> then set [minute v] to (join [0] (current [minute v])) else set [minute v] to (current [minute v]) end if <(current [second v]) < [10]> then set [second v] to (join [0] (current [second v])) else set [second v] to (current [second v]) end say (join (hour) (join [:] (join (minute) (join [:] (second)))))
समाधान
स्क्रैच १.x में प्रयुक्त समाधान इस प्रकार है:
when gf clicked reset timer set [hour v] to [] set [minute v] to [] set [second v] to [] repeat until <<(hour)>[-1]> and <(hour)<[24]>>//१२ घंटे की घड़ी के लिए घंटा> ० और घंटा<१३ ask [What hour is it?] and wait set [hour v] to (answer) end repeat until <<(minute)>[-1]> and <(minute)<[60]>> ask [What minute is it?] and wait set [minute v] to (answer) end reset timer forever set [second v] to (round ((timer)-(0.5)))//स्क्रैच १.x में कोई फर्श या छत नहीं थी if <(second)>[59]> then reset timer change [minute v] by (1) end if <(minute)>[59]> then set [minute v] to [0] change [hour v] by (1) end if <(hour)>[23]> then//१२ घंटे की घड़ी के लिए घंटा>१२ set [hour v] to [0]//१२ घंटे की घड़ी के लिए घंटा २ पर सेट करें end