यह ट्यूटोरियल न्यूनतम छद्म-बाइनरी संख्याओं के योग के रूप में एक संख्या के प्रतिनिधित्व पर चर्चा करेगा। छद्म-द्विआधारी संख्याएँ वे संख्याएँ होती हैं जिनमें केवल द्विआधारी अंक होते हैं, अर्थात, 0 और 1. छद्म-द्विआधारी संख्याओं के उदाहरण हैं 00, 11, 10, 100, 111, 1011, आदि।
नीचे संख्याओं के कुछ उदाहरण दिए गए हैं जिन्हें छद्म बाइनरी संख्याओं के योग के रूप में दर्शाया गया है।
Input : 23 Output : 11 + 11 + 1 Explanation : 23 = 11 + 11 + 1, sum of pseudo-binary numbers(11, 11, 1) is 23. Input : 50 Output : 10 + 10 + 10 + 10 + 10
समाधान खोजने के लिए दृष्टिकोण
एन का प्रतिनिधित्व करने के लिए न्यूनतम छद्म-बाइनरी संख्या खोजने के सर्वोत्तम तरीकों में से एक नीचे है।
-
एक संख्या X लें और संख्या N के अंकों के अनुसार उसके अंकों को 1 या 0 में अपडेट करें।
-
N के प्रत्येक स्थान पर अंकों की जाँच करें,
-
अगर यह 0 है, तो X के उस स्थान को 0 पर अपडेट करें।
-
अगर यह शून्य नहीं है, तो X के उस स्थान को 1 में अपडेट करें।
-
मान लीजिए N =32, तो X 11 होगा
-
-
तब X एक छद्म-द्विआधारी संख्या होगी।
-
अब N को X से घटाएं और चरण 1 को तब तक दोहराएं जब तक कि N शून्य न हो जाए।
उदाहरण
उपरोक्त दृष्टिकोण के लिए C++ कोड
#include<iostream> using namespace std; int main(){ int N = 51; // find a pseudo-binary number until N becomes 0. cout << "pseudo-binary representation of " << N << " is: "; while (N > 0){ // finding X which contains 0's and 1's according to N. int temp = N; int X = 0, bit = 1; // checking each place of N for zero or non-zero. while (temp!=0){ int last_dig = temp % 10; temp = temp / 10; if (last_dig != 0) X += bit; bit *= 10; } // printing one pseudo-binary number. cout << X << " "; // Updating N by subtracting with X. N = N - X; } return 0; }
आउटपुट
pseudo-binary representation of 51 is: 11 10 10 10 10
संहिता को समझना
-
एक्स को खोजने के लिए एन लेने और प्रत्येक स्थान पर अंक चुनने के लिए एक बाहरी समय लूप।
-
हम अस्थायी चर के प्रत्येक स्थान की जाँच करने और चर X के उस स्थान को अद्यतन करने के लिए N और आंतरिक लूप के साथ अस्थायी चर के मान को अद्यतन कर रहे हैं।
-
X का मुद्रण मान क्योंकि वह एक छद्म-द्विआधारी संख्या है।
-
हम X के साथ घटाकर N को अपडेट करते हैं और फिर से बाहरी लूप में जाते हैं जब तक कि N 0 नहीं हो जाता।
निष्कर्ष
इस ट्यूटोरियल में, हमने चर्चा की है कि हम किसी संख्या को न्यूनतम संभव छद्म-द्विआधारी संख्याओं के योग के रूप में कैसे निरूपित कर सकते हैं। हमने सभी छद्म-बाइनरी संख्याओं को खोजने के दृष्टिकोण पर चर्चा की। हमने उसी के लिए C++ कोड पर भी चर्चा की, जिसे हम किसी अन्य प्रोग्रामिंग भाषा जैसे C, Java, Python, आदि में लिख सकते हैं। हमें उम्मीद है कि आपको यह ट्यूटोरियल मददगार लगेगा।