घड़ी के आसपास कोडिंग


47

सिंगल लाइन प्रोग्राम दो या दो से अधिक वर्णों को लिखें जिसमें कोई लाइन टर्मिनेटरहो और कोई इनपुट न ले। उदाहरण के लिए, आपका कार्यक्रम हो सकता है:

MyProgram

जब आपके कार्यक्रम को 12, 3, 6 और 9 बजे बनाते हैं, तो घड़ी के हाथों को आकृतियों में व्यवस्थित किया जाता है। किसी अन्य समय का समर्थन करने की आवश्यकता नहीं है।

विशेष रूप से:

  • जब आपके कार्यक्रम को घड़ी के हाथों की तरह 12 बजे व्यवस्थित किया जाता है (like)

    m
    a
    r
    g
    o
    r
    P
    y
    M
    

    इसे चलाना चाहिए 12

  • जब आपके कार्यक्रम को 3 बजे घड़ी के हाथ की तरह व्यवस्थित किया जाता है (like)

    m
    a
    r
    g
    o
    r
    P
    y
    MyProgram
    

    इसे चलाना चाहिए 3

  • जब आपका कार्यक्रम 6 बजे घड़ी के हाथ की तरह व्यवस्थित होता है (like)

    m
    a
    r
    g
    o
    r
    P
    y
    M
    y
    P
    r
    o
    g
    r
    a
    m
    

    इसे चलाना चाहिए 6

  • जब आपका कार्यक्रम 9 बजे घड़ी के हाथ की तरह व्यवस्थित हो (like)

    ........m
    ........a
    ........r
    ........g
    ........o
    ........r
    ........P
    ........y
    margorPyM
    

    इसे चलाना चाहिए 9

टिप्पणियाँ

  • आपके कार्यक्रम में पहला वर्ण हमेशा घड़ी के केंद्र में रखा जाता है। (ध्यान दें कि M6 बजे के उदाहरण में केवल एक ही कैसे है ।)

  • 9 बजे की व्यवस्था के लिए कार्यक्रम को इंडेंट करने के लिए किसी भी एक नॉन-न्यूलाइन चरित्र का उपयोग किया जा सकता है। उदाहरणों .में उपयोग किया जाता है, लेकिन अंतरिक्ष या /या #बस के रूप में मान्य होगा।

  • 3 बजे की व्यवस्था के लिए, कोई भी पात्र खाली ऊपरी दाएँ क्षेत्र में नहीं होना चाहिए। (अर्थात इसे खाली रखें, इसे रिक्त स्थान से न भरें।)

  • प्रारंभिक कार्यक्रम व्यवस्था ( MyProgramजैसा है) को कुछ भी करने की आवश्यकता नहीं है। केवल 12, 3, 6 और 9 बजे की व्यवस्था के लिए सही, अच्छी तरह से परिभाषित आउटपुट की आवश्यकता होती है।

  • कोड जो केवल एक फ़ंक्शन या REPL कमांड के रूप में काम करता है उसे अनुमति नहीं है। चार व्यवस्थाओं में से प्रत्येक को पूर्ण कार्यक्रमों के रूप में चलाने के लिए तैयार होना चाहिए।

बाइट्स में सबसे छोटा कार्यक्रम जीत जाता है। उदा MyProgramकी लंबाई 9 बाइट्स है।


27
मुझे नहीं पता कि यह कैसे करना शुरू करना है
निक हार्टले

1
क्या यह ठीक है अगर एक चरित्र मुद्रित किया जाता है और फिर बैकस्पेस के साथ मिटा दिया जाता है?
feersum

5
यहाँ एक पंक्ति और एक गद्दी चरित्र से सभी चार कोड उत्पन्न करने के लिए CJam स्क्रिप्ट है: cjam.tryitonline.net/… इसे पोस्ट में शामिल करने के लिए स्वतंत्र महसूस करें।
मार्टिन एंडर

4
मैं Brainfuck में यह कोशिश करने वाला था, लेकिन यह BF के समक्ष मेरे मस्तिष्क को चुनौती दी गई चुनौती को पूरा करता है।
बिल्ली

2
@ मुझे विश्वास है कि यह असंभव है क्योंकि कार्यक्रम 3और 6ब्रेनफॉक के लिए अविवेकी होगा क्योंकि वे केवल व्हाट्सएप में भिन्न होते हैं।
मार्टिन एंडर

जवाबों:


37

गोल्फस्क्रिप्ट, 11 10 बाइट्स

21;;3#9];6

#पैडिंग चरित्र के रूप में उपयोग करता है ।

12 बजे

6
;
]
9
#
3
;
;
1
2

इसे ऑनलाइन आज़माएं!

यह काम किस प्रकार करता है।

  • 6स्टैक पर धकेल दिया जाता है, ;इसे छोड़ देता है।

  • ] एक सरणी में ढेर लपेटता है (आउटपुट को प्रभावित नहीं करता है)।

  • 9और 3स्टैक पर धकेल दिए जाते हैं, ;और ;उन्हें छोड़ देते हैं।

  • अंत में, 1और 2स्टैक पर धकेल दिया जाता है, और बिना किसी अलगाव के छापा जाता है।

3 बजे

6
;
]
9
#
3
;
;
1
21;;3#9];6

इसे ऑनलाइन आज़माएं!

यह काम किस प्रकार करता है

  • 6स्टैक पर धकेल दिया जाता है, ;इसे छोड़ देता है।

  • ] एक सरणी में ढेर लपेटता है (आउटपुट को प्रभावित नहीं करता है)।

  • 9और 3स्टैक पर धकेल दिए जाते हैं, ;और ;उन्हें छोड़ देते हैं।

  • 1और 21ढेर पर धकेल दिया जाता है, ;;उन्हें त्याग देता है।

  • 3 स्टैक पर धकेल दिया जाता है।

  • # पंक्ति के अंत तक एक टिप्पणी शुरू करता है।

6 बजे

6
;
]
9
#
3
;
;
1
2
1
;
;
3
#
9
]
;
6

इसे ऑनलाइन आज़माएं!

यह काम किस प्रकार करता है

  • 6स्टैक पर धकेल दिया जाता है, ;इसे छोड़ देता है।

  • ] एक सरणी में ढेर लपेटता है (आउटपुट को प्रभावित नहीं करता है)।

  • 9और 3स्टैक पर धकेल दिए जाते हैं, ;और ;उन्हें छोड़ देते हैं।

  • 1, 2और 1स्टैक पर धकेल दिया जाता है।

  • ;और ;पिछले त्यागने 1और 2

  • 3और 9स्टैक पर धकेल दिया जाता है।

  • ]और ;स्टैक को एक सरणी में लपेटें और स्टैक को हटा दें।

  • 6 स्टैक पर धकेल दिया जाता है।

9:00 बजे

#########6
#########;
#########]
#########9
##########
#########3
#########;
#########;
#########1
6;]9#3;;12

इसे ऑनलाइन आज़माएं!

यह काम किस प्रकार करता है

  • सभी पंक्तियाँ लेकिन अंतिम टिप्पणियाँ हैं।

  • 6स्टैक पर धकेल दिया जाता है, ;इसे छोड़ देता है।

  • ] एक सरणी में ढेर लपेटता है (आउटपुट को प्रभावित नहीं करता है)।

  • 9 स्टैक पर धकेल दिया जाता है।

  • # पंक्ति के अंत तक एक टिप्पणी शुरू करता है।


25

> <> , 20 बाइट्स

X   n-+g+aa0g+9a2c!v

वहाँ में unprintables है, अर्थात्:

  • के बाद Xहै\x06\t
  • के बाद cहै\x03

स्रोत कोड का एक ही भाग हर बार चलाया जाता है, gस्रोत कोड के दो भागों का उपयोग करके यह निर्धारित किया जाता है कि 12 से क्या घटाना है।

v                         Make IP move downwards
 !\x03                    Jump over the \x03
      c                   Push 12
       2a9+g              Get the char at position (2, 19), i.e. the \t for
                          3 o'clock, the \x03 for 9 o'clock, 0 otherwise
            0aa+g         Get the char at position (0, 20), i.e. first char on
                          the line after the X, \x06 for 6 o'clock
                 +        Add
                  -       Subtract from the 12
                   n      Output as number
                    \t    Unrecognised instruction - errors out

12 बजे | 3 बजे | 6 बजे | 9 बजे (टैब के कारण गलत तरीके से देखा गया)


7
"12 वोट 0 जवाब। रुको जब तक सपा साबित होता है कि यह तुच्छ है कृपया।" -Helka, चैट में
एलेक्स ए

1

ROOP , 54 बाइट्स

OW    3#H V  1#1  H#6  WO#H V>V1#OW V>V9#OW   2#OW   1

<पैडिंग चरित्र के रूप में उपयोग करता है ।

12 बजे | 3 बजे | 6 बजे | 9:00 बजे

12 बजे

वह 1और वह 23 चक्रों के लिए शीर्ष गिरावट के पास हैं। जब वे Wऑपरेटर तक पहुंचते हैं , तो ऑपरेटर नंबर को अंदर रखता है O, जो आउटपुट का प्रतिनिधित्व करता है।

1इस हिस्से में

1


V

H

2 चक्रों के लिए गिर गया, Vऑपरेटर इसे नीचे ले जाता है और अगले चक्र में उस Hऑपरेटर को सक्रिय करता है जो प्रोग्राम को समाप्त करता है।

3 बजे

Oऐसी वस्तुएं भी हैं जो चलती हैं और गिरती हैं। चूंकि कोड में अब एक से अधिक वर्णों के साथ एक पंक्ति है, अन्य सभी लाइनें रिक्त स्थानों से भरी हुई हैं। सभी Oसही और पतन के लिए ले जाता है, जिससे Wऑपरेटरों भेजने के लिए कोई स्थान नहीं है करने के लिए 1और 2

एकमात्र Oजो नहीं चलता है वह केंद्र में फंस गया है। 3इसके बाद के संस्करण के लिए 4 चक्र के लिए गिर जाता है W

फिर जो संख्याएँ गिरती हैं, उनमें Wऔर के बीच 4 रिक्त स्थान भरते हैं 3। जब यह भरा जाता है, तो एक और संख्या उन सभी को पार कर सकती है और उस Hऑपरेटर तक पहुंच सकती है जो कार्यक्रम को समाप्त करता है।

6 बजे

1


H
#
6


W
O

12 के समान, 6गिरता है Wऔर 1करने के लिए H। यह 2 चक्रों में होता है, 12 मामले होने से पहले कार्यक्रम को समाप्त करता है।

9:00 बजे

<9
<V
<>
<V
< 
<W
<O
<#
<1
<V
<>
<V
< 
<H

(मैं एक कॉलम दिखाता हूं <क्योंकि बाकी कुछ नहीं करते हैं)।

Vऊपर उठाता है 9और नीचे पाइप, जो बाईं ओर वस्तु विक्षेपित करने के लिए ले जाता है यह। पाइप <वस्तु को नीचे और अगले एक को दाईं ओर ले जाता है। Vऑपरेटर डाल 9नीचे अंतरिक्ष में और फिर इसे उत्पादन के लिए भेजा जाता है।

1बराबर आंदोलनों बनाता है और पहुँचता है Hजो कार्यक्रम समाप्त होता है,। जैसा कि पाइप एक ही चक्र में वस्तुओं को स्थानांतरित करते हैं, यह सब एक चक्र लेता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.