जावास्क्रिप्ट / क्यूबिक्स, 36 बाइट्स
//.!v+u;$I^@O<.Iu
a=>eval(a.join`-`)
कोशिश करो!
नीचे दिए गए स्निपेट का उपयोग करके जावास्क्रिप्ट फ़ंक्शन का परीक्षण किया जा सकता है, यहां क्यूबिक्स कार्यक्रम का परीक्षण किया जा सकता है ।
यह कैसे काम करता है?
जावास्क्रिप्ट
पहली पंक्ति जावास्क्रिप्ट के लिए एक पंक्ति टिप्पणी है, क्योंकि यह दो स्लैश के साथ शुरू होती है, इसलिए जावास्क्रिप्ट केवल नीचे की रेखा ( a=>eval(a.join`-`)
) को देखता है , जो इनपुट के रूप में एक सरणी लेता है, इसे माइनस साइन इनबेटन के साथ जोड़ता है, और फिर कोड के रूप में चलाता है, जिसके परिणामस्वरूप सरणी में सभी तत्वों का घटाव।
let f=
//.!v+u;$I^@O<.Iu
a=>eval(a.join`-`)
console.log(f([1,2,3,4,5]))
console.log(f([3,1,4,1,5]))
Cubix
क्यूबिक्स निम्नलिखित घन को देखता है (ध्यान दें कि क्यूबिक्स सभी व्हाट्सएप को अनदेखा करता है):
/ / .
! v +
u ; $
I ^ @ O < . I u a = > e
v a l ( a . j o i n ` -
` ) . . . . . . . . . .
. . .
. . .
. . .
शुरुवात
आईपी पूर्व की ओर इशारा करते हुए तीसरी लाइन पर शुरू होता है। यह 'I'
कमांड को हिट करता है , जो इनपुट से एक नंबर लेता है, और इसे स्टैक पर धकेलता है। फिर, इसे '^'
योग-लूप में पुनर्निर्देशित किया जाता है।
योग लूप
मैंने सभी पात्रों को योग लूप का हिस्सा नहीं निकाला, और उन्हें बिना ऑप्स ( '.'
) द्वारा प्रतिस्थापित किया । आईपी दूसरी ओर पूर्व की ओर इशारा करते हुए दूसरी पंक्ति में आता है।
. . .
! v +
u ; $
. . . . . . I u . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . .
. . .
. . .
सबसे पहले, '!'
कमांड शीर्ष तत्व की जांच करता है। यदि वह है 0
(यानी हम इनपुट के अंत तक पहुंच गए हैं), तो अगले निर्देश ( 'v'
) को निष्पादित किया जाता है, आईपी को लूप से बाहर दर्शाता है। यदि हम अभी तक इनपुट के अंत तक नहीं पहुंचे हैं, तो हम शीर्ष दो वस्तुओं को एक साथ जोड़ते हैं ( '+'
, दूसरा आइटम उस बिंदु तक योग है, शीर्ष आइटम नया इनपुट)। फिर, IP 'u'
वर्ण में क्यूब के दूसरे चेहरे को लपेटता है , जिसके कारण 'I'
उत्तर को इंगित करते हुए IP एक U- टर्न बनाता है, और एक कमांड निष्पादित करता है (दूसरा इनपुट पूर्णांक पढ़ें)। आईपी शीर्ष चेहरे पर वापस लपेटता है, '$'
हटाता है ( ';'
) हटाएं निर्देश ( ) और एक और यू-टर्न बनाता है, जिस बिंदु पर हमने शुरू किया था।
समाप्त
यदि IP लूप से परिलक्षित होता है, तो निम्न वर्ण निष्पादित होते हैं:
. . .
. v .
. ; .
. . @ O < . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . .
. . .
. . .
ये निर्देश शीर्ष तत्व (जो शून्य है) को हटाते हैं, और फिर पूर्णांक के रूप में शीर्ष तत्व (योग) का उत्पादन करते हैं। फिर '@'
कमांड पहुंच जाता है, इसलिए प्रोग्राम समाप्त हो जाता है।