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

जावास्क्रिप्ट में 0s और 1s की स्ट्रिंग में एक संख्या स्ट्रिंग को एन्कोड करना

<घंटा/>

समस्या

हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो एक स्ट्रिंग लेता है जो एक दशमलव संख्या का प्रतिनिधित्व करता है।

हमारे फ़ंक्शन को निम्नलिखित नियमों के आधार पर इस दशमलव को बाइनरी में कनवर्ट/एन्कोड करना चाहिए।

n के प्रत्येक अंक d के लिए

  • चलो k, d के बिट्स की संख्या है
  • हम k-1 को अंक 0 के बाद और उसके बाद अंक 1 का लिखते हैं
  • हम अंक d को बाइनरी स्ट्रिंग के रूप में लिखते हैं, जिसमें सबसे दाहिना बिट सबसे कम महत्वपूर्ण होता है
  • अंत में, हम d की कोडिंग प्राप्त करने के लिए b) और c) के परिणाम को जोड़ते हैं

अंत में, हम n के अंकों के लिए प्राप्त सभी परिणामों को जोड़ते हैं।

इस प्रकार, कोड 2 के रूप में 0110 और 3 के रूप में 0111

उदाहरण

निम्नलिखित कोड है -

const str = '77338855';
const encodeNumString = (str = '') => {
   const buildarray = (string = '') => {
      let n = string.split(''), res = '';
      n.forEach(x => {
         let num = Number(x).toString(2);
         num = '0'.repeat(num.length -1) + '1' + num;
         res += num;
      });
      return res;
   }
   const arr = [];
   let res = "";
   for (let i = 0; i < 10; i++){
      arr.push(buildarray(String(i)));
   };
   while (str.length){
      for (let i = 0; i < 10; i++) {
         if (str.startsWith(arr[i])) {
            res += String(i);
            str = str.slice(arr[i].length);
            break;
         }
      }
   }
   return res;
};
console.log(encodeNumString(str));

आउटपुट

कंसोल आउटपुट निम्नलिखित है -

001111001111011101110001100000011000001101001101

  1. जावास्क्रिप्ट में दिए गए स्ट्रिंग में कई शब्दों को कैसे गिनें?

    रेगुलर एक्सप्रेशन का उपयोग करना जावास्क्रिप्ट . में दिए गए स्ट्रिंग में शब्दों की संख्या गिनना आसान है . शब्दों की संख्या गिनने के लिए कुछ चरणों का पालन करना होगा अनुसरण करने के लिए चरण हम जानते हैं कि एक वाक्य या वाक्यांश उन शब्दों से बना होता है जो बीच में रिक्त स्थान से अलग होते हैं और कुछ उदाहर

  1. जावास्क्रिप्ट में संयोजित किए बिना स्ट्रिंग और संख्या कैसे जोड़ें?

    जब एक स्ट्रिंग और एक संख्या फिर जोड़ दिए जाते हैं, जोड़ने के बजाय, संयोजन जगह लेता है। वे दोनों संलग्न . के रूप में समाप्त हुए एक दूसरे। लेकिन अगर हमें उन्हें जोड़ने की जरूरत है तो हमें स्ट्रिंग को एक पूर्णांक में बदलने की जरूरत है। इस स्थिति में, + ऑपरेटर तस्वीर में आता है। यह वास्तव में, स्ट्

  1. जावास्क्रिप्ट में टेक्स्टडिकोडर और टेक्स्ट एन्कोडर?

    TextEncoder का उपयोग किसी दिए गए स्ट्रिंग को utf-8 मानक में बदलने के लिए किया जाता है। यह स्ट्रिंग से Uint8Array को फिर से ट्यून करता है। TextDecoder का उपयोग बाइट्स की एक धारा को कोड बिंदुओं की एक धारा में गुप्त करने के लिए किया जाता है। यह UTF-8, ISO-8859-2, KOI8-R, GBK आदि को डिकोड कर सकता है।