Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> सी प्रोग्रामिंग

सी प्रोग्राम एक बाइनरी नंबर में अनुगामी और अग्रणी शून्य की गणना करने के लिए

आरंभ करने के लिए, आइए समझते हैं कि बाइनरी संख्या में पीछे वाले शून्य क्या होते हैं।

अनुगामी शून्य

कम से कम महत्वपूर्ण बिट (एलएसबी) से पहले एक के बाद शून्य की स्थिति को द्विआधारी संख्या में अनुगामी शून्य कहा जाता है।

उदाहरण

104 दशमलव संख्या है

104 की बाइनरी संख्या है:(MSB) 1101000(LSB)

यहाँ,

  • MSB सबसे महत्वपूर्ण बिट को संदर्भित करता है।
  • LSB कम से कम महत्वपूर्ण बिट को संदर्भित करता है।
  • एलएसबी से पहले बिट सेट के बाद, तीन शून्य हैं।
  • अनुगामी शून्यों की संख्या तीन है।

उदाहरण

दी गई संख्या के लिए अनुगामी शून्यों की संख्या गिनने का कार्यक्रम निम्नलिखित है -

#include<stdio.h>
#include<stdlib.h>
int main(){
   int number, i, trail = 0, size;
   printf("Enter a number\n");
   scanf("%d",&number);
   size = sizeof(number) * 8;
   for(i = 0; i < size; i++){
      if((number >> i) & 1) {
         break;
      }
      trail++;
   }
   printf("Number of trailing ZERO is = %d", trail);
   return 0;
}

आउटपुट

जब उपरोक्त प्रोग्राम को निष्पादित किया जाता है, तो यह निम्नलिखित परिणाम उत्पन्न करता है -

Enter a number
24
Number of trailing ZERO is = 3

अग्रणी शून्य

यदि शून्य की स्थिति बिट से पहले एक पर सेट है , उन्हें अग्रणी शून्य कहा जाता है।

उदाहरण

94 दशमलव संख्या है।

94 की बाइनरी संख्या है:(MSB) .....001011110(LSB)

अग्रणी शून्य की संख्या =25

. है

कार्यक्रम

नीचे दी गई संख्या के लिए अग्रणी शून्यों की संख्या गिनने का कार्यक्रम है।

#include<stdio.h>
#include<stdlib.h>
int main(){
   int number, i, lead = 0, Msb,size;
   printf("Enter a number\n");
   scanf("%d",&number);
   size = sizeof(number) * 8;
   Msb=1<<(size-1);
   for(i = 0; i < size; i++){
      if((number << i) & Msb) {
         break;
      }
      lead++;
   }
   printf("Number of Leading ZERO is = %d", lead);
   return 0;
}

आउटपुट

जब उपरोक्त प्रोग्राम को निष्पादित किया जाता है, तो यह निम्नलिखित परिणाम उत्पन्न करता है -

Enter a number
94
Number of Leading ZERO is = 25

  1. एक संख्या के भाज्य में अनुगामी शून्यों की गणना करने के लिए पायथन कार्यक्रम

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक पूर्णांक n दिया गया है, हमें भाज्य में अनुगामी शून्यों की संख्या गिनने की आवश्यकता है। आइए अब नीचे दिए गए कार्यान्वयन में समाधान देखें - उदाहरण # trailing zero def find(n):    # Initialize count &nb

  1. लगातार 1 के बिना बाइनरी स्ट्रिंग्स की संख्या गिनने के लिए पायथन प्रोग्राम

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक धनात्मक पूर्णांक N दिया गया है, हमें लंबाई N के साथ उपलब्ध सभी संभावित भिन्न बाइनरी स्ट्रिंग्स को गिनने की आवश्यकता है ताकि स्ट्रिंग में कोई क्रमागत 1 मौजूद न हो। आइए अब नीचे दिए गए कार्यान्वयन में समाधान देख

  1. एक संख्या में कुल बिट्स गिनने के लिए एक पायथन प्रोग्राम लिखें?

    पहले हम एक नंबर इनपुट करते हैं फिर इस नंबर को बिन () फ़ंक्शन का उपयोग करके बाइनरी में परिवर्तित करते हैं और फिर आउटपुट स्ट्रिंग के पहले दो अक्षर 0b को हटाते हैं, फिर बाइनरी स्ट्रिंग की लंबाई की गणना करते हैं। उदाहरण Input:200 Output:8 स्पष्टीकरण Binary representation of 200 is 10010000 एल्गोरिद