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

JavaScript में जंबल्ड नंबर नेम्स से संख्याएं तैयार करना


समस्या

मान लीजिए निम्नलिखित नंबर नेम स्ट्रिंग −

const str = 'TOWNE';

यदि हम इस स्ट्रिंग को रीअरेंज करें, तो हमें इसमें दो नंबर नेम मिल सकते हैं: 2 (TWO) और 1 (ONE)। इसलिए, हम 21 आउटपुट की उम्मीद करते हैं। हमें एक JavaScript फ़ंक्शन लिखना है जो ऐसी एक स्ट्रिंग लेता है और स्ट्रिंग में मौजूद नंबरों को लौटाता है।

उदाहरण

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

const str = 'TOWNE'; const findNumber = (str = '') => { function stringPermutations(str) { const res = []; if (str.length == 1) return [str]; if (str.length == 2) return [str, str[1]+str[0]]; str.split('').forEach((chr, ind, arr) => { let sub = [].concat(arr); sub.splice(ind, 1); stringPermutations(sub.join('')).forEach(function (perm) { res.push(chr+perm); }); }); return res; } const legend = { 'ONE': 1, 'TWO': 2, 'THREE': 3, 'FOUR': 4, 'FIVE': 5, 'SIX': 6, 'SEVEN': 7, 'EIGHT': 8, 'NINE': 9, 'ZERO': 0 }; const keys = Object.keys(legend); const res = {}; const resArr = []; let result = ''; keys.forEach(key => { const match = stringPermutations(key).find(el => el.split('').every(char => str.includes(char))); if(match){ const index = str.indexOf(match[0]); if(!res.hasOwnProperty(key)){ res[key] = [index]; }else if(!res[key].includes(index)){ res[key].push(index); }; }; }); Object.keys(res).forEach(word => { resArr.push([word, ...res[word]]); }); resArr.sort((a, b) => a[1] - b[1]); resArr.forEach(sub => { result = result + String(legend[sub[0]]).repeat(sub.length - 1); }); return +result; }; console.log(findNumber(str));

आउटपुट

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

21
  1. JavaScript में दशमलव संख्याओं (Decimal Numbers) को कैसे वैलिडेट करें? JavaScript में दशमलव संख्याओं (Decimal Numbers) को कैसे वैलिडेट करें?

    JavaScript में दशमलव संख्याओं को वैलिडेट करने का निम्नलिखिक कोड है:उदाहरण<!DOCTYPE html> <html lang="hi"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Valida

  1. - JavaScript में जंबल्ड नंबर नेम्स से संख्याएं तैयार करना

    समस्यामान लीजिए निम्नलिखित नंबर नेम स्ट्रिंग −const str = TOWNE;यदि हम इस स्ट्रिंग को रीअरेंज करें, तो हमें इसमें दो नंबर नेम मिल सकते हैं: 2 (TWO) और 1 (ONE)। इसलिए, हम 21 आउटपुट की उम्मीद करते हैं। हमें एक JavaScript फ़ंक्शन लिखना है जो ऐसी एक स्ट्रिंग लेता है और स्ट्रिंग में मौजूद नंबरों को

  1. - जावास्क्रिप्ट में 1 से n तक की सभी संख्याओं से विभाज्य सबसे छोटी संख्या ढूंढना

    समस्याहमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो एक संख्या n लेता है। यह फ़ंक्शन उस सबसे छोटी संख्या को ढूंढकर लौटाएगा जो 1 से n तक की सभी संख्याओं से विभाज्य हो।उदाहरणनिम्न कोड देखें:const num = 11; const smallestDivisible = (num = 1) => {    let res = num * (num - 1) || 1;