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

बिटवाइज़ प्रिंट करें और C++ में नंबर N का सेट करें


इस समस्या में, हमें 0 से n तक की सभी संख्याओं को प्रिंट करना होता है जो बिटवाइज़ और n के बाइनरी के होते हैं।

आइए अवधारणा को बेहतर ढंग से समझने के लिए एक उदाहरण लेते हैं।

Input : N = 4.
Output : 0 4
Explanation :
   0 & 4 = 0
   1 & 4 = 0
   2 & 4 = 0
   3 & 4 = 0
   4 & 4 = 4.
Input : N = 6
Output : 0, 2, 4, 6

इस समस्या को हल करने के लिए, हमें बिटवाइज़ ऑपरेटरों का उपयोग करने की आवश्यकता है। इनका उपयोग करके हम आवश्यक उपसमुच्चय प्राप्त करेंगे। हम एक अलग अद्यतन फ़ंक्शन का उपयोग करके n से 1 तक पीछे की ओर पुनरावृति करेंगे जो केवल उन मानों का उपयोग करेगा जो रिटर्न कुछ के आउटपुट और संचालन हैं और n के साथ। ऑपरेशन होगा i =(i-1) &N.

इस विचार के आधार पर एक एल्गोरिथम बनाते हैं -

एल्गोरिदम

Step 1 : Loop from n to 1 using decrement operator i = (i-1) & n
Step 2 : PRINT i.
Step 3 : EXIT.

उदाहरण

उपरोक्त एल्गोरिथम का कार्यक्रम कार्यान्वयन -

#include <iostream>
using namespace std;
int main() {
   int n = 11;
   for (int i = n; i > 0; i = (i - 1) & n)
      cout << i << " ";
   cout << 0;
   return 0;
}

आउटपुट

11 10 9 8 3 2 1 0

  1. C++ प्रोग्रामिंग में बाइनरी ट्री के प्रत्येक नोड में सेट बिट्स की संख्या प्रिंट करें।

    बाइनरी ट्री को देखते हुए, फ़ंक्शन नोड्स में संग्रहीत कुंजियों के बाइनरी मान उत्पन्न करेगा और फिर उस बाइनरी समकक्ष में सेट बिट्स(1) की संख्या लौटाएगा। उदाहरण बाइनरी ट्री जिसमें चाबियां होती हैं:10 3 211 140 162 100 और 146 कुंजी बाइनरी समकक्ष बिट्स (आउटपुट) सेट करें 10 1010 2 3 0011 2 211 1101

  1. स्ट्रिंग को संख्या में कनवर्ट करना और इसके विपरीत C++ में

    इस खंड में हम देखेंगे कि स्ट्रिंग को संख्या में और संख्या को स्ट्रिंग में कैसे परिवर्तित किया जाए। सबसे पहले हम देखेंगे कि स्ट्रिंग को संख्या में कैसे बदलें। स्ट्रिंग टू नंबर रूपांतरण यहां हम देखेंगे कि किसी संख्या स्ट्रिंग को पूर्णांक प्रकार के डेटा में कैसे परिवर्तित किया जाए। हम atoi () फ़ंक्शन

  1. बिटवाइज़ और C++ में क्या है?

    बिटवाइज AND ऑपरेटर (&) पहले ऑपरेंड के प्रत्येक बिट की तुलना दूसरे ऑपरेंड के संगत बिट से करता है। यदि दोनों बिट्स 1 हैं, तो संबंधित परिणाम बिट को 1 पर सेट किया जाता है। अन्यथा, संबंधित परिणाम बिट 0 पर सेट होता है। बिटवाइज़ समावेशी और ऑपरेटर के दोनों ऑपरेंड अभिन्न प्रकार के होने चाहिए। उदाहरण के लिए,