Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

C++ प्रोग्राम: बाइनरी को ऑक्टल और ऑक्टल को बाइनरी में बदलना


परिचय

बाइनरी संख्या आधार-2 प्रणाली में और ऑक्टल संख्या आधार-8 प्रणाली में व्यक्त की जाती है। दोनों के बीच रूपांतरण कंप्यूटर विज्ञान में आम है।

बाइनरी और ऑक्टल संख्याओं के उदाहरण

बाइनरी संख्याऑक्टल संख्या
0101012
001117
1100131
1000020

C++ प्रोग्राम उदाहरण

#include <iostream>
#include <cmath>
using namespace std;

int BinaryToOctal(int binaryNum) {
    int octalNum = 0, decimalNum = 0, count = 0;
    while(binaryNum != 0) {
        decimalNum += (binaryNum % 10) * pow(2, count);
        ++count;
        binaryNum /= 10;
    }
    count = 1;
    while (decimalNum != 0) {
        octalNum += (decimalNum % 8) * count;
        decimalNum /= 8;
        count *= 10;
    }
    return octalNum;
}

int OctalToBinary(int octalNum) {
    int decimalNum = 0, binaryNum = 0, count = 0;
    while(octalNum != 0) {
        decimalNum += (octalNum % 10) * pow(8, count);
        ++count;
        octalNum /= 10;
    }
    count = 1;
    while (decimalNum != 0) {
        binaryNum += (decimalNum % 2) * count;
        decimalNum /= 2;
        count *= 10;
    }
    return binaryNum;
}

int main() {
    int binaryNum = 1011, octalNum = 25;
    cout << "Binary to Octal" << endl;
    cout << "Binary number: " << binaryNum << endl;
    cout << "Octal number: " << BinaryToOctal(binaryNum) << endl;
    cout << "Octal to Binary" << endl;
    cout << "Octal number: " << octalNum << endl;
    cout << "Binary number: " << OctalToBinary(octalNum) << endl;
    return 0;
}

आउटपुट

Binary to Octal
Binary number: 1011
Octal number: 13
Octal to Binary
Octal number: 25
Binary number: 10101

कोड व्याख्या

BinaryToOctal() फ़ंक्शन

बाइनरी संख्या को पहले डेसीमल में बदला जाता है (प्रत्येक बाइनरी अंक को 2 की घात से गुणा करके), फिर डेसीमल को ऑक्टल में बदला जाता है (8 से बार-बार विभाजित करके)।

OctalToBinary() फ़ंक्शन

ऑक्टल संख्या को पहले डेसीमल में बदला जाता है (प्रत्येक ऑक्टल अंक को 8 की घात से गुणा करके), फिर डेसीमल को बाइनरी में बदला जाता है (2 से बार-बार विभाजित करके)।

main() फ़ंक्शन

दोनों रूपांतरणों का प्रदर्शन करने के लिए नमूना मानों (बाइनरी: 1011, ऑक्टल: 25) का उपयोग किया गया है।

  1. C++ में बाइनरी मैट्रिक्स को शून्य मैट्रिक्स में बदलने के लिए न्यूनतम फ्लिप C++ में बाइनरी मैट्रिक्स को शून्य मैट्रिक्स में बदलने के लिए न्यूनतम फ्लिप

    मान लीजिए हमारे पास एक m x n बाइनरी मैट्रिक्स mat है। एक चरण में, हम एक सेल चुन सकते हैं और उसके बिट और उसके चारों पड़ोसियों (यदि मौजूद हों) को फ्लिप कर सकते हैं। हमें मैट्रिक्स को शून्य मैट्रिक्स में बदलने के लिए आवश्यक न्यूनतम चरणों की संख्या ज्ञात करनी है। यदि कोई समाधान नहीं है, तो -1 वापस करें।

  1. C++ में बाइनरी खोज प्रोग्राम C++ में बाइनरी खोज प्रोग्राम

    बाइनरी खोज क्या है? बाइनरी खोज (आधा-अंतराल खोज) एक खोज एल्गोरिदम है जो क्रमबद्ध सरणी में लक्ष्य मान की स्थिति ढूंढता है। यह लक्ष्य मान की तुलना मध्य तत्व से करता है और खोज स्थान को आधा कर देता है। मुख्य बिंदु केवल क्रमबद्ध सरणी पर काम करता है समय जटिलता: O(log n) दुनिया के सभी नाम क्रमबद्ध हों तो

  1. C++ में डेसिमल से बाइनरी रूपांतरण C++ में डेसिमल से बाइनरी रूपांतरण

    एक डेसिमल संख्या इनपुट के रूप में दी गई है, कार्य दी गई डेसिमल संख्या को बाइनरी संख्या में बदलना है। कंप्यूटर में डेसिमल संख्या को आधार 10 के साथ दर्शाया जाता है और बाइनरी संख्या को आधार 2 के साथ दर्शाया जाता है क्योंकि इसमें केवल दो बाइनरी अंक 0 और 1 होते हैं जबकि डेसिमल संख्याएं 0-9 से शुरू होने व