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

जावास्क्रिप्ट में अधिकतम एक स्वैप का उपयोग करके अधिकतम संख्या ढूँढना

<घंटा/>

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

हमारे कार्य का कार्य संख्या के किन्हीं दो अंकों के बीच अधिकतम एक अदला-बदली करना और अधिकतम संभव संख्या प्राप्त करना है। यदि, हालांकि, संख्या पहले से ही अधिकतम संभव संख्या है, तो हमें संख्या को ही वापस कर देना चाहिए।

उदाहरण के लिए -

अगर इनपुट नंबर है -

const num = 1625;

तब आउटपुट होना चाहिए -

const output = 6125;

हमने 1 और 6 की अदला-बदली की और यह एकमात्र स्वैप है जो एकल स्वैप में सबसे बड़ी संख्या प्राप्त करता है

उदाहरण

इसके लिए कोड होगा -

const num = 1625;
const findMaximumDigit = (num, max = 0) => {
   if(!num){
      return max;
   };
   return findMaximumDigit(Math.floor(num / 10), Math.max(max, num %10));
};
const makeOneSwap = (num = 1) => {
   let i = 0;
   const max = findMaximumDigit(num);
   const numStr = String(num);
   const numArr = numStr.split('');
   const maxIndex = numStr.lastIndexOf('' + max);
   while(i < maxIndex){
      if(+numStr[i] < max){
         let temp = numArr[i];
         numArr[i] = numArr[maxIndex];
         numArr[maxIndex] = temp;
         break;
      };
   };
   return +(numArr.join(''));
};
console.log(makeOneSwap(num));

आउटपुट

और कंसोल में आउटपुट होगा -

6125

  1. यह पता लगाना कि कोई संख्या जावास्क्रिप्ट में त्रिकोणीय संख्या है या नहीं

    त्रिकोणीय संख्या त्रिभुज संख्या उन बिंदुओं की संख्या है जो एक समबाहु त्रिभुज को भर सकते हैं। उदाहरण के लिए - 9 एक त्रिकोणीय संख्या है जो 4 इकाइयों के प्रत्येक पक्ष के साथ एक समबाहु त्रिभुज बनाती है। समस्या हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना आवश्यक है जो एक संख्या लेता है और यदि यह त्रिकोणीय सं

  1. C++ में अधिकतम एक स्वैप ऑपरेशन का उपयोग करके सबसे छोटी संख्या बनाएं

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

  1. अधिकतम एक स्वैप ऑपरेशन का उपयोग करके सबसे बड़ी संख्या बनाएं C++

    इस समस्या में, हमें एक धनात्मक पूर्णांक दिया जाता है। हमारा काम अधिकतम एक स्वैप ऑपरेशन का उपयोग करके सबसे बड़ी संख्या बनाने के लिए एक प्रोग्राम बनाना है। हम मौजूदा संख्या के अंकों का उपयोग करके एक नया नंबर बनाएंगे। बनाई गई सबसे बड़ी संख्या में मौजूदा संख्या से केवल एक अंक की अदला-बदली हो सकती है।