आपकी चुनौती इस तरह से इनपुट लेने की है (एक हैलो वर्ल्ड प्रोग्राम):
++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.
और एक शीघ्र उत्पादन (जो होगा "> "
):
>
उपयोगकर्ता फिर प्रॉम्प्ट पर कुछ भी दर्ज कर सकता है। आपके साधारण डिबगर में ये कमांड होनी चाहिए:
S
- कदमL
कदम के बाद वर्तमान स्थान (देखें ) आउटपुट ।S(a positive integer)
- कदम है कि कई रिक्त स्थान
L
- स्थान- शब्द "स्थान" हमेशा यह बताता है कि आप कार्यक्रम में कहां हैं (यानी, निर्देश सूचक)।
इस तरह बनाया गया:
v +++++++[>+++++++<-]>.
इसका मतलब है कि कार्यक्रम का वर्तमान स्थान तीसरे स्थान पर है
+
।
G(an integer)
- के लिए जाओ- इसका मतलब यह है कि जब तक आप उस स्थान पर नहीं पहुंचते तब तक कदम बढ़ाते रहें। यदि आप कार्यक्रम के अंत तक पहुँचते हैं और आप वहाँ नहीं पहुँचते हैं, तो बस प्रोग्राम से बाहर निकलें।
- एक नकारात्मक पूर्णांक का अर्थ है कि अंत से कई वर्ण। हां, इसका मतलब है कि
-0
अलग है0
, और-1
दूसरे से अंतिम चरित्र है। - इस कमांड के लिए कुछ भी आउटपुट न करें।
D
- डंप सरणी- जैसे स्वरूपित हो
1, 2, 3, 4, 5
- यदि सरणी है
1, 2, 3, 0, 0, 0, 0, 0, ...
, केवल आउटपुट1, 2, 3
। D(a positive integer) (a positive integer)
- उन दो पदों (समावेशी) के बीच सभी सरणी आइटम डंप करें
- जैसे स्वरूपित हो
(a positive integer)
- उस सरणी स्थिति में वर्तमान में आइटम का उत्पादनP
- बीएफ पॉइंटर के इंडेक्स को आउटपुट करें (जिस चीज से आप बदलते हैं>
और<
)।
जब प्रोग्राम इनपुट का अनुरोध करता है, तो शीघ्र दिखाएं "I> "
। (आप एक बार में एक वर्ण इनपुट कर सकते हैं।)
जब यह कुछ आउटपुट करता है, तो दिखाएं "O> " + (the output)
। आदेशों के बीच कई आउटपुट को एक साथ जंजीर किया जाना चाहिए (यानी आप ऐसा नहीं कर सकते > G-0 O> H O> e O> l O> l O> o ...
, यह होना चाहिए > G-0 O> Hello, World!
)।
कार्यक्रम के अंत तक पहुँचने के बाद आउटपुट "संपन्न" और बाहर निकलें।
नमूना रन:
++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.
> S
1
> S
2
> S2
4
> S0
4
> L
v
++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.
> D
4
> 0
4
> D10 15
0, 0, 0, 0, 0, 0
> G-0
O> Hello, World!
Done
सैंपल रन लूप्स और P
इंस्ट्रक्शन (गणना 3*2+1
) के माध्यम से बढ़ते हुए दिखा
+++[>++<-]>+
> S3
3
> L
v
+++[>++<-]>+
> S3
6
> L
v
+++[>++<-]>+
> P
1
> S3
9
> L
v
+++[>++<-]>+
> S
3
> L
v
+++[>++<-]>+
> D
2, 2
>
नमूना रन I / O दिखा रहा है
>+[>,---------------------------------]<[<]>[>.]
> G37
I> H
I> e
I> l
I> l
I> o
I> !
> D
0, 39, 68, 75, 75, 78
> G-0
O> 'DKKN
Done
यह कोड-गोल्फ है , इसलिए सबसे छोटा कोड जीत जाएगा।