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

जावा में दी गई संख्या के वास्तविक बिट्स को रिवर्स करें


एक पूर्णांक n दिया गया है जो ऋणात्मक नहीं है। लक्ष्य n के बिट्स को रिवर्स करना और ऐसा करने से परिणामी संख्या की रिपोर्ट करना है। बिट्स को रिवर्स करते समय, पूर्णांक के वास्तविक बाइनरी रूप का उपयोग किया जाता है; कोई अग्रणी 0s ध्यान में नहीं लिए जाते।

आइए इसके लिए विभिन्न इनपुट आउटपुट परिदृश्य देखें

इनपुट - 13

आउटपुट - दी गई संख्या के वास्तविक बिट्स को रिवर्स करें 11

(13)10 = (1101)2. बिट्स को रिवर्स करने के बाद, हमें मिलता है: (1011)2 = (11)10.

व्याख्या - इनपुट संख्या से बाइनरी बिट्स प्राप्त किए जाते हैं जिन्हें फिर रिवर्स किया जाता है और अंत में दशमलव प्रारूप में परिवर्तित किया जाता है जिसे आउटपुट के रूप में वापस किया जाता है।

इनपुट - 18

आउटपुट - दी गई संख्या के वास्तविक बिट्स को रिवर्स करें 9

(18)10 = (10010)2. बिट्स को रिवर्स करने के बाद, हमें मिलता है: (1001)2 = (9)10.

व्याख्या - इनपुट संख्या से बाइनरी बिट्स प्राप्त किए जाते हैं जिन्हें फिर रिवर्स किया जाता है और अंत में दशमलव प्रारूप में परिवर्तित किया जाता है जिसे आउटपुट के रूप में वापस किया जाता है।

नीचे दिए गए प्रोग्राम में उपयोग किया गया दृष्टिकोण इस प्रकार है

  • मुख्य विधि के अंदर

    • संख्या को इनपुट के रूप में लिया जाता है और विधि reverseBinaryBits(int input) में पास किया जाता है

  • विधि reverseBinaryBits(int input) के अंदर

    • रिवर्स बिट्स को संग्रहीत करने के लिए एक वेरिएबल rev_input प्रारंभ किया जाता है

    • ब्रेकिंग पॉइंट (input > 0) के साथ एक लूप दोहराया जाता है (हम दाईं ओर से पार कर रहे हैं)

      • बाइनरी प्रतिनिधित्व में एक-एक करके बिट्स को पुनः प्राप्त करने के लिए बिटवाइज़ राइट शिफ्ट ऑपरेशन का उपयोग किया जाता है, और उन्हें rev में संचित करने के लिए बिटवाइज़ लेफ्ट शिफ्ट ऑपरेशन का उपयोग किया जाता है।

उदाहरण

class TutorialsPoint{    public static int reverseBinaryBits(int input){       int rev_input = 0;       while (input > 0){          rev_input <<= 1;          if ((int) (input & 1) == 1){             rev_input ^= 1;           }          input >>= 1;       }       return rev_input;    }    public static void main(String[] args){       int input = 13;       System.out.println("Reverse actual bits of the given number");       System.out.println(reverseBinaryBits(input));    } }

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो यह निम्नलिखित आउटपुट उत्पन्न करेगा

Reverse actual bits of the given number 11

  1. जावा में JPasswordField के अंदर अंकों की संख्या को कैसे प्रतिबंधित करें? जावा में JPasswordField के अंदर अंकों की संख्या को कैसे प्रतिबंधित करें?

    JPasswordField JTextField का एक सबक्लास है और JPasswordField में दर्ज प्रत्येक वर्ण को एक इको वर्ण से बदला जा सकता है। यह पासवर्ड के लिए गोपनीय इनपुट की अनुमति देता है। JPasswordField के महत्वपूर्ण मेथड्स हैं getPassword(), getText(), getAccessibleContext() आदि। डिफ़ॉल्ट रूप से, हम JPasswordField क

  1. - जावा में कैसे जांचें कि दिया गया कैरेक्टर नंबर/लेटर है?

    Character क्लास Object क्लास का एक सबक्लास है और यह प्रिमिटिव टाइप char के मान को ऑब्जेक्ट में लपेटता है। Character टाइप के ऑब्जेक्ट में एक सिंगल फील्ड होता है जिसका टाइप char है। हम Character क्लास के isDigit() मेथड का उपयोग करके स्ट्रिंग में दिए गए कैरेक्टर की जांच कर सकते हैं कि यह नंबर/लेटर है

  1. Java में संख्या गिनने का प्रोग्राम कैसे लागू करें? Java में संख्या गिनने का प्रोग्राम कैसे लागू करें?

    प्रोग्राम एक JLabel का उपयोग काउंट लेबल रखने के लिए करता है, एक JTextField घटक संख्या काउंट रखने के लिए, JButton घटक जोड़ें, हटाएं और रीसेट बटन बनाने के लिए। जब हम ऐड बटन पर क्लिक करते हैं, तो JTextField में काउंट 1 से बढ़ जाता है और रिमूव बटन पर क्लिक करके काउंट 1 से घट जाता है। यदि हम रीसेट बटन प