6 बाइट्स के लिए धन्यवाद मार्टिन!
1="/}.!+/M8;
विस्तारित:
1 = "
/ } . !
+ / M 8 ;
. . . .
. . .
इसे ऑनलाइन आज़माएं
पुराना, उत्तर। यह इसलिए छोड़ा जा रहा है क्योंकि चित्र और स्पष्टीकरण नए हेक्सागोनी उपयोगकर्ताओं के लिए सहायक हो सकते हैं।
!).={!/"*10;$.[+{]
विस्तारित:
! ) .
= { ! /
" * 1 0 ;
$ . [ +
{ ] .
यह फाइबोनैचि अनुक्रम को नए सिरे से अलग करता है।
इसे ऑनलाइन आज़माएं!हालांकि सावधान रहें, ऑनलाइन दुभाषिया वास्तव में अनंत आउटपुट को पसंद नहीं करता है।
व्याख्या
इस कार्यक्रम में दो "सबरूटीन्स" हैं, प्रत्येक को दो उपयोग किए गए आईपी में से एक द्वारा चलाया जाता है। पहला रूटीन नए सिरे से प्रिंट करता है, और दूसरा फाइबोनैचि गणना और आउटपुट करता है।
पहली सबरूटीन पहली पंक्ति पर शुरू होती है और पूरे समय दाएं से बाएं चलती है। यह पहले मेमोरी पॉइंटर पर वैल्यू प्रिंट करता है (शून्य से आरंभिक), और उसके बाद मेमोरी पॉइंटर पर मूल्य बढ़ाता है 1
। नो-ऑप के बाद, आईपी तीसरी पंक्ति में कूदता है जो पहले किसी अन्य मेमोरी सेल पर स्विच करता है, फिर एक नई रेखा प्रिंट करता है। चूंकि एक नई पंक्ति का एक सकारात्मक मूल्य है (इसका मूल्य 10 है), कोड हमेशा अगली पंक्ति में कूद जाएगा। पांचवीं पंक्ति हमारे फाइबोनैचि संख्या में मेमोरी पॉइंटर लौटाती है और फिर अन्य सबरूटीन पर स्विच करती है। जब हम इस सबरूटीन से वापस आते हैं, तो IP बिना किसी सेशन के, तीसरी पंक्ति में वापस कूद जाएगा।
दूसरा सबरूटीन शीर्ष दाएं कोने से शुरू होता है और दक्षिण पूर्व की ओर बढ़ना शुरू करता है। नो-ऑप के बाद, हम पश्चिम को दूसरी पंक्ति के साथ यात्रा करने के लिए बाउंस कर रहे हैं। मेमोरी पॉइंटर को अगले स्थान पर ले जाने से पहले यह लाइन वर्तमान फाइबोनैचि संख्या को प्रिंट करती है। फिर आईपी चौथी पंक्ति में कूदता है, जहां यह पिछले दो का उपयोग करके अगले फाइबोनैचि संख्या की गणना करता है। यह फिर पहले सबरूटीन पर नियंत्रण वापस देता है, लेकिन जब यह कार्यक्रम का नियंत्रण प्राप्त करता है, तो यह तब तक जारी रहता है जब तक कि यह एक छलांग से नहीं मिलता है, जहां यह दर्पण पर उछलता है जो मूल रूप से पश्चिम को इंगित करने के लिए उपयोग किया जाता था, क्योंकि यह दूसरी पंक्ति में लौटता है।
प्रारंभिक सुंदर चित्र!
छवि के बाईं ओर कार्यक्रम है, दाहिने हाथ की ओर मेमोरी का प्रतिनिधित्व करता है। ब्लू बॉक्स पहला IP है, और दोनों IP निष्पादित होने के अगले निर्देश पर इशारा कर रहे हैं।
नोट: चित्र केवल उन लोगों को बहुत अच्छे लगते हैं जिनके पास छवि संपादन कार्यक्रमों के साथ समान रूप से सीमित कौशल है: पीआई कम से कम 2 और पुनरावृत्तियों को जोड़ देगा ताकि *
ऑपरेटर का उपयोग अधिक स्पष्ट हो जाए।
नोट 2: मैंने केवल एलेफाल्फा के उत्तर को देखा था इस के अधिकांश लिखने के बाद, मुझे लगा कि यह अलगाव के कारण अभी भी मूल्यवान है, लेकिन हमारे कार्यक्रमों के वास्तविक फाइबोनैचि भाग बहुत समान हैं। इसके अलावा, यह सबसे छोटा हेक्सागोनी प्रोग्राम है जिसे मैंने एक से अधिक आईपी का उपयोग करते हुए देखा है, इसलिए मैंने सोचा कि वैसे भी रखना अच्छा हो सकता है: पी
^2
रूप में प्रतिस्थापन के बारे में सोचना नहीं होगा0,1
। +1