हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो तीन नंबर लेता है। मान लीजिए कि तीन संख्याएँ a, b और n हैं।
हमारा काम उन सभी n-अंकीय संख्याओं को खोजना है जिनके अंकों का योग सम स्थिति और विषम स्थिति में क्रमशः a और b से विभाज्य है। और हमें अंत में सभी आवश्यक संख्याओं वाली एक सरणी वापस करनी होगी, यदि कोई मिलान संख्या नहीं है तो सरणी खाली होनी चाहिए।
उदाहरण
निम्नलिखित कोड है -
const indexSum =(num, sumOdd =0, sumEven =0, index =0) => {if(num){ if(index% 2 ===0){ sumEven +=num% 10; }else{ sumOdd +=num% 10; }; रिटर्न इंडेक्ससम (Math.floor(num / 10), sumOdd, sumEven, ++index); }; वापसी {sumOdd, sumEven};};const डिवाइड्स =(b, a) => a% b ===0;const countNum =(n, first, second) => {शुरू होने दें =Math.pow(10, ( एन -1)); स्थिरांक अंत =Math.pow(10, n)-1; कॉन्स्ट रेस =[]; जबकि (प्रारंभ <=अंत) { const {sumEven, sumOdd} =indexSum (प्रारंभ); कॉन्स्ट कंडीशन =डिवाइड्स (प्रथम, समईवन) &&डिवाइड्स (सेकंड, समऑड); अगर (शर्त) {res.push (शुरू); }; प्रारंभ ++; }; वापसी res;};console.log(countNum(3, 5, 3));
आउटपुट
यह कंसोल में निम्न आउटपुट उत्पन्न करेगा -
[ 104, 109, 134, 139, 164, 169, 194, 199, 203, 208, 233, 238, 263, 268, 293, 298, 302, 307, 332, 337, 362, 367, 392, 397, 401, 406, 431, 436, 461, 466, 491, 496, 500, 505, 530, 535, 560, 565, 590, 595, 604, 609, 634, 639, 664, 669, 694, 699, 703, 708, 733, 738, 763, 768, 793, 798, 802, 807, 832, 837, 862, 867, 892, 897, 901, 906, 931, 936, 961, 966, 991, 996]पूर्व>