एक इनपुट के रूप में एक दशमलव संख्या के साथ दिया गया, कार्य दिए गए दशमलव संख्या को एक बाइनरी संख्या में बदलना है।
कंप्यूटर में दशमलव संख्या को आधार 10 के साथ दर्शाया जाता है और बाइनरी संख्या को आधार 2 के साथ दर्शाया जाता है क्योंकि इसमें केवल दो बाइनरी अंक 0 और 1 होते हैं जबकि दशमलव संख्या 0 - 9 से शुरू होने वाली कोई भी संख्यात्मक अंक हो सकती है।
दशमलव संख्या को बाइनरी संख्या में बदलने के लिए दिए गए चरणों का पालन करें -
- सबसे पहले दी गई संख्या को रूपांतरण संख्या के आधार मान से विभाजित करें उदा। 42 को 2 से भाग देना क्योंकि हमें 42 को एक बाइनरी संख्या में बदलने की आवश्यकता है जिसका आधार 2 है और फिर एक भागफल प्राप्त करें और इसे स्टोर करें। यदि शेष 0 है तो बिट को 0 अन्य 1 के रूप में संग्रहीत करें।
- प्राप्त भागफल को बाइनरी नंबर के आधार मान से विभाजित करें जो कि 2 है और बिट्स को स्टोर करते रहें।
- संग्रहीत बिट्स पर राइट शिफ्ट करते रहें
- इस चरण को तब तक दोहराएं जब तक कि शेष अविभाज्य न रह जाए
एक दशमलव संख्या को एक द्विआधारी संख्या में बदलने का सचित्र निरूपण नीचे दिया गया है।
उदाहरण
Input-: 42 Divide the 42 with base 2 : 42 / 2 = 0 (remainder) 21(quotient) Divide quotient with base: 21 / 2 = 1(remainder) 10(quotient) Divide quotient with base: 10 / 2 = 0(remainder) 5(quotient) Divide quotient with base: 5 / 2 = 1(remainder) 2(quotient) Divide quotient with base: 2 / 2 = 0(remainder) 1(quotient) Now reverse the bits to obtain final value. Output-: 101010
एल्गोरिदम
Start Step 1-> declare function to convert decimal to binary int convert(int num) Loop For int i = 31 i >= 0 i— Set int k = num >> i If (k & 1) Print "1" End Else Print "0" End End Step 2-> In main() Declare and set int num = 42 Call convert(num) Stop
उदाहरण
#include <iostream> using namespace std; //convert decimal to binary int convert(int num) { for (int i = 31; i >= 0; i--) { int k = num >> i; if (k & 1) cout << "1"; else cout << "0"; } } int main() { int num = 42; convert(num); }
आउटपुट
अगर हम उपरोक्त कोड चलाते हैं तो यह निम्नलिखित आउटपुट उत्पन्न करेगा
00000000000000000000000000101010