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

C++ प्रोग्राम बिट ऐरे को लागू करने के लिए

बिट ऐरे को लागू करने के लिए यह एक सी ++ प्रोग्राम है। एक बिट ऐरे एक सरणी डेटा संरचना है जो डेटा को कॉम्पैक्ट रूप से संग्रहीत करती है। यह मूल रूप से एक साधारण डेटा संरचना को लागू करने के लिए उपयोग किया जाता है।

एल्गोरिदम

कार्य और छद्म कोड:

Begin
   Function getBit(int val,int pos)
   singleBit->b = 0
   if(pos == 0)
      singleBit->b = val & 1
   else
      singleBit->b = ( val & (1 << pos ) ) >> pos
      return singleBit
   Function setBit(BitArr *bt,B *bit,int pos)
      bt->bVal[pos] = bit
      return bt
   Function getVal(BitArr *bArray)
   initialize val = 0
   initialize bVal = 0
   bVal = bArray->bVal[0]->b
   val= val|bVal
   for i = 1 to B_A_LENGTH-1
      bVal = bArray->bVal[i]->b
      bVal =bVal << i
      val=val | bVal
      return val
   done
End.

उदाहरण कोड

#include <iostream>
#include <string>
using namespace std;
#define B_A_LENGTH 4
typedef struct {
   unsigned int b : 1;
} B;
class BitArr {
   private:
   B **bVal;
   public:
   BitArr() {
      bVal = new B* [B_A_LENGTH];
   }
   B *getBit(int val,int pos) {
      B *singleBit = new B;
      singleBit->b = 0;
      if(pos == 0) {
         singleBit->b = val & 1;
      } else {
         singleBit->b = ( val & (1 << pos ) ) >> pos;
      }
      return singleBit;
   }
   BitArr *setBit(BitArr *bt,B *bit,int pos) {
      bt->bVal[pos] = bit;
      return bt;
   }
   int getVal(BitArr *bArray) {
      int val = 0;
      unsigned int bVal = 0;
      bVal = bArray->bVal[0]->b;
      val |= bVal;
      for(int i = 1; i < B_A_LENGTH; i++) {
         bVal = bArray->bVal[i]->b;
         bVal <<= i;
         val |= bVal;
      }
      return val;
   }
};
int main() {
   int v;
   cout<<"Enter 4 bit integer value (0 - 8): ";
   cin>>v;
   BitArr bt, *samplebt;
   samplebt = new BitArr;
   for (int i = 0; i < B_A_LENGTH; i++) {
      samplebt = bt.setBit(samplebt, bt.getBit(v, i), i);
      cout<<"Bit of "<<v<<" at positon "<<i<<": "<<"\n"<<bt.getBit(v, i)->b<<endl;
   }
   cout<<"The value is: "<<bt.getVal(samplebt)<<endl;
   return 0;
}

आउटपुट

Enter 4 bit integer value (0 - 8): 6Bit of 6 at positon 0:
0
Bit of 6 at positon 1:
1
Bit of 6 at positon 2:
1
Bit of 6 at positon 3:
0
The value is: 6

  1. C++ में किसी सरणी की बिटनोसिटी की जांच करने का कार्यक्रम

    एन पूर्णांकों की एक सरणी गिरफ्तारी [एन] को देखते हुए, कार्य यह जांचना है कि दिया गया सरणी बिटोनिक है या नहीं। यदि दी गई सरणी बिटोनिक है तो हां यह एक बिटोनिक सरणी है प्रिंट करें, अन्यथा प्रिंट करें नहीं यह एक बिटोनिक सरणी नहीं है। एक बिटोनिक सरणी तब होती है जब सरणी पहले सख्ती से बढ़ते क्रम में होती

  1. सी ++ प्रोग्राम सरणी का उपयोग करके स्टैक को लागू करने के लिए

    स्टैक एक सार डेटा संरचना है जिसमें तत्वों का संग्रह होता है। स्टैक LIFO तंत्र को लागू करता है यानी अंत में धकेले जाने वाले तत्व को पहले पॉप आउट किया जाता है। स्टैक में कुछ सिद्धांत संचालन हैं - पुश - यह स्टैक के शीर्ष पर डेटा मान जोड़ता है। पॉप - यह स्टैक के शीर्ष पर डेटा मान को हटा देता है

  1. सी ++ प्रोग्राम सॉर्ट किए गए ऐरे को लागू करने के लिए

    एक क्रमबद्ध सरणी एक सरणी है जिसमें प्रत्येक तत्व को किसी क्रम में क्रमबद्ध किया जाता है जैसे संख्यात्मक, वर्णानुक्रम आदि। संख्यात्मक सरणी को सॉर्ट करने के लिए कई एल्गोरिदम हैं जैसे बबल सॉर्ट, इंसर्शन सॉर्ट, सेलेक्शन सॉर्ट, मर्ज सॉर्ट, क्विक सॉर्ट, ढेर सॉर्ट आदि। चयन सॉर्ट का उपयोग करके सरणी को सॉर्ट