pushy , 19 बाइट्स
कोई बेसिन रूपांतरण नहीं!
$&2%v2/;FL:vK2*;OS#
इसे ऑनलाइन आज़माएं!
पुसी के दो ढेर हैं, और यह जवाब इस बड़े पैमाने पर उपयोग करता है।
इस कार्यक्रम के दो भाग हैं। सबसे पहले, $&2%v2/;F
संख्या को अपने रिवर्स बाइनरी प्रतिनिधित्व में परिवर्तित करता है:
\ Implicit: Input is an integer on main stack.
$ ; \ While i != 0:
&2%v \ Put i % 2 on auxiliary stack
2/ \ i = i // 2 (integer division)
F \ Swap stacks (so result is on main stack)
उदाहरण 10 को देखते हुए, प्रत्येक पुनरावृत्ति पर निम्नलिखित के रूप में ढेर दिखाई देंगे:
1: [10]
2: []
1: [5]
2: [0]
1: [2]
2: [0, 1]
1: [1]
2: [0, 1, 0]
1: [0]
2: [0, 1, 0, 1]
हम देख सकते हैं कि अंतिम पुनरावृत्ति के बाद, 0, 1, 0, 1
दूसरे स्टैक पर बनाया गया है - 10 के रिवर्स बाइनरी अंक।0b1010
,।
कोड का दूसरा भाग, L:vK2*;OS#
मेरे पिछले उत्तर से लिया गया है जो बाइनरी को दशमलव में परिवर्तित करता है । उस उत्तर में बताई और बताई गई विधि का उपयोग करते हुए, यह द्विआधारी अंकों को स्टैक पर एक बेस 10 पूर्णांक में परिवर्तित करता है, और परिणाम को प्रिंट करता है।