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

C++ में प्रथम और अंतिम तीन बिट्स

इस समस्या में, हमें एक संख्या N दी जाती है। हमारा कार्य दिए गए पूर्णांक मानों N के लिए मुट्ठी तीन और अंतिम तीन बिट्स का दशमलव रूपांतरण खोजना है। ।

समस्या को समझने के लिए एक उदाहरण लेते हैं,

Input : 57
Output : 71

समाधान दृष्टिकोण

एक सरल उपाय यह है कि संख्या n को उसके बाइनरी समकक्ष में बदल दिया जाए और फिर बिट्स को एक सरणी में सहेजा जाए। इसके बाद, हम सरणी से पहले तीन और अंतिम तीन मानों को अलग-अलग संख्याओं में बदल देंगे। बिट्स के दोनों सेटों का दशमलव रूपांतरण हमारा परिणाम है।

उदाहरण के लिए, संख्या 80 लें।

80 का बाइनरी रूपांतरण 1010000 है।

पहले तीन बिट्स (101) का दशमलव रूपांतरण 5 है।

अंतिम तीन बिट्स (000) का दशमलव तुल्यांक 0 है।

इसलिए आउटपुट 5 0 है।

उदाहरण

हमारे समाधान की कार्यप्रणाली को दर्शाने के लिए कार्यक्रम

#include <bits/stdc++.h>
using namespace std;
void convtbnTodcml(int n)
{
   int arr[64] = { 0 };
   int x = 0, index;
   for (index = 0; n > 0; index++) {
      arr[index] = n % 2;
      n /= 2;
   }
   x = (index < 3) ? 3 : index;
   int d = 0, p = 0;
   for (int index = x - 3; index < x; index++)
      d += arr[index] * pow(2, p++);
   cout << d << " ";
   d = 0;
   p = 0;
   for (int index = 0; index < 3; index++)
      d += arr[index] * pow(2, p++);
   cout << d;
}
int main()
{
   int n = 57;
   cout<<"Decimal conversion of first and last bits of the number "<<n<<" is ";
   convtbnTodcml(n);
   return 0;
}

आउटपुट

Decimal conversion of first and last bits of the number 57 is 7 1

  1. सी ++ प्रोग्राम यह जांचने के लिए कि स्ट्रिंग के पहले और आखिरी अक्षर बराबर हैं या नहीं

    स्ट्रिंग के इनपुट के साथ दिया गया और कार्य यह जांचना है कि दिए गए स्ट्रिंग के पहले और अंतिम वर्ण बराबर हैं या नहीं। उदाहरण Input-: study Output-: not equal    As the starting character is ‘s’ and the end character of a string is ‘y’ Input-: nitin Output-: yes it hav

  1. C++ में किलोबाइट्स को बाइट्स और बिट्स में बदलने का कार्यक्रम

    KiloBytes के रूप में इनपुट के साथ दिया गया और कार्य दिए गए इनपुट को बाइट्स और बिट्स की संख्या में बदलना है। बिट - कंप्यूटर में, बिट दो पूर्णांक मान 0 और 1 के साथ प्रतिनिधित्व की जाने वाली सबसे छोटी इकाई है और कंप्यूटर में सभी सूचनाओं को इन दो अंकों के अनुक्रम के रूप में संसाधित किया जाता है। एन-बि

  1. एक्सेल में फर्स्ट और लास्ट नेम को कैसे अलग करें

    मान लीजिए कि एक ऐसी स्थिति है जिसमें आपके पास लोगों के पूरे नामों की सूची है। आप इन नामों को तीन भागों में विभाजित करना चाहते हैं - पहला नाम, मध्य नाम और अंतिम नाम। यह माइक्रोसॉफ्ट एक्सेल में किया जा सकता है सीमांकक . का उपयोग करके या विभाजक समारोह। नामों को विभाजित करने का एक अन्य तरीका फॉर्मूला .