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

सी ++ में दो संख्याओं के गुणकों की क्रमबद्ध सूची में एन-वें एकाधिक

आपको तीन नंबर दिए गए हैं। आपको पहली दो संख्याओं के गुणजों में से n-वें गुणज ज्ञात करना होगा। आइए इसे और स्पष्ट रूप से समझने के लिए एक उदाहरण देखें।

इनपुट

x = 2
y = 3
n = 7

आउटपुट

10

पहला n ****2 का गुणज 2 4 6 8 10 12 14

. है

पहले n ****3 **** के गुणज 3 6 9 12 15 18 21

. हैं

यदि दोनों गुणकों को मिलाकर उन्हें क्रमबद्ध करें तो हमें 2 3 4 6 8 9 10 12 14 15 18 21 मिलता है और सूची से nवां नंबर 10 है।

एल्गोरिदम

  • सभी गुणकों को संग्रहीत करने के लिए एक वेक्टर प्रारंभ करें।
  • x के पहले n ****गुणों को खोजें और उन्हें उपरोक्त वेक्टर में जोड़ें।
  • अब, y का पहला n गुणज ज्ञात कीजिए।
    • वेक्टर में जोड़ें अगर यह पहले से वेक्टर में मौजूद नहीं है।
  • गुणकों को क्रमबद्ध करें।
  • वेक्टर से nवां गुणक प्रिंट करें।

कार्यान्वयन

C++ में उपरोक्त एल्गोरिथम का कार्यान्वयन निम्नलिखित है

#include<bits/stdc++.h>
using namespace std;
int findNthMultiple(int x, int y, int n) {
   vector<int> multiples;
   for (int i = 1; i <= n; i++) {
      multiples.push_back(x * i);
   }
   sort(multiples.begin(), multiples.end());
   for (int i = 1, k = n; i <= n && k; i++) {
      if (!binary_search(multiples.begin(), multiples.end(), y * i)) {
         multiples.push_back(y * i);
         sort(multiples.begin(), multiples.end());
      }
   }
   return multiples[n - 1];
}
int main() {
   int x = 2, y = 3, n = 7;
   cout << findNthMultiple(x, y, n) << endl;
   return 0;
}

आउटपुट

यदि आप उपरोक्त कोड चलाते हैं, तो आपको निम्न परिणाम प्राप्त होंगे।

10

  1. C++ प्रोग्राम दो नंबर स्वैप करने के लिए

    दो नंबरों को स्वैप करने के लिए प्रोग्राम बनाने के दो तरीके हैं। एक में एक अस्थायी चर का उपयोग करना शामिल है और दूसरा तरीका तीसरे चर का उपयोग नहीं करता है। इन्हें विस्तार से इस प्रकार समझाया गया है - अस्थायी चर का उपयोग करके दो नंबरों को स्वैप करने का कार्यक्रम एक अस्थायी चर का उपयोग करके दो नंबरों

  1. दो नंबर जोड़ने के लिए C++ प्रोग्राम

    जोड़ एक बुनियादी अंकगणितीय ऑपरेशन है। दो संख्याओं को जोड़ने का कार्यक्रम दो संख्याओं का योग करता है और उनके योग को स्क्रीन पर प्रिंट करता है। एक प्रोग्राम जो दो संख्याओं के योग को प्रदर्शित करता है, वह इस प्रकार दिया गया है - उदाहरण #include <iostream> using namespace std; int main() {  

  1. सी # में दो क्रमबद्ध सरणी मर्ज करें

    दो सॉर्ट किए गए सरणियों को मर्ज करने के लिए, पहले दो क्रमबद्ध सरणियों को सेट करें - int[] array1 = { 1, 2 }; int[] array2 = { 3, 4 }; अब, इसे एक सूची में जोड़ें और मर्ज करें - var list = new List<int>(); for (int i = 0; i < array1.Length; i++) {    list.Add(array1[i]);   &nb