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

C++ प्रोग्राम: दो अलग-अलग सरणियों में संग्रहीत तत्वों की माध्यिका खोजें

एल्गोरिदम

Median() फ़ंक्शन में दो सरणी a1[], a2[] और n = तत्वों की संख्या लें। i और j को 0 से प्रारंभ करें, n1 और n2 को -1 से। 0 से n तक लूप चलाएं: यदि i == n तो n1 = n2, n2 = a2[0], लूप तोड़ें। अन्यथा यदि j == n तो n1 = n2, n2 = a1[0], लूप तोड़ें। यदि a1[i] < a2[j] तो n1 = n2, n2 = a1[i], i बढ़ाएं। अन्यथा n1 = n2, n2 = a2[j], j बढ़ाएं। अंत में n1 और n2 का औसत लौटाएं।

उदाहरण कोड

#include <iostream>
#include <bits/stdc++.h>
using namespace std;

int Median(int a1[], int a2[], int n) {
    int i = 0, j = 0, c;
    int n1 = -1, n2 = -1;
    for (c = 0; c <= n; c++) {
        if (i == n) {
            n1 = n2;
            n2 = a2[0];
            break;
        } else if (j == n) {
            n1 = n2;
            n2 = a1[0];
            break;
        }
        if (a1[i] < a2[j]) {
            n1 = n2;
            n2 = a1[i];
            i++;
        } else {
            n1 = n2;
            n2 = a2[j];
            j++;
        }
    }
    return (n1 + n2) / 2;
}

int main() {
    int n1, n2, i;
    cout << "\nपहले एरे के लिए तत्वों की संख्या दर्ज करें: ";
    cin >> n1;
    int a1[n1];
    for (i = 0; i < n1; i++) {
        cout << "पहले एरे के लिए तत्व " << i+1 << ": ";
        cin >> a1[i];
    }
    cout << "\nदूसरे एरे के लिए तत्वों की संख्या दर्ज करें: ";
    cin >> n2;
    int a2[n2];
    for (i = 0; i < n2; i++) {
        cout << "दूसरे एरे के लिए तत्व " << i+1 << ": ";
        cin >> a2[i];
    }
    if (n1 == n2)
        cout << "माध्यिका है " << Median(a1, a2, n1);
    else
        cout << "असमान आकार के एरे के लिए काम नहीं करता";
    return 0;
}

आउटपुट

पहले एरे के लिए तत्वों की संख्या दर्ज करें: 5
पहले एरे के लिए तत्व 1: 2
पहले एरे के लिए तत्व 2: 4
पहले एरे के लिए तत्व 3: 6
पहले एरे के लिए तत्व 4: 7
पहले एरे के लिए तत्व 5: 9
दूसरे एरे के लिए तत्वों की संख्या दर्ज करें: 5
दूसरे एरे के लिए तत्व 1: 20
दूसरे एरे के लिए तत्व 2: 40
दूसरे एरे के लिए तत्व 3: 60
दूसरे एरे के लिए तत्व 4: 70
दूसरे एरे के लिए तत्व 5: 90
माध्यिका है 20
  1. - C++ प्रोग्राम: बाइनरी सर्च दृष्टिकोण से दो सॉर्टेड एरे की माध्यिका खोजें

    एल्गोरिदम m2 तो संयुक्त माध्यिका या तो पहले एरे के पहले आधे में या दूसरे एरे के दूसरे आधे में होगी। यदि m1 < m2 तो संयुक्त माध्यिका या तो पहले एरे के दूसरे आधे में या दूसरे एरे के पहले आधे में होगी। अद्यतन प्रारंभ और अंत इंडेक्स के साथ median() को पुनरावर्ती रूप से कॉल करें।उदाहरण कोड#include <io

  1. - C++ प्रोग्राम: LCM (लघुत्तम समापवर्त्य) खोजें

    परिचयदो संख्याओं का लघुत्तम समापवर्त्य (LCM) वह सबसे छोटी संख्या है जो दोनों का गुणक है। उदाहरण के लिए: मान लें हमारे पास दो संख्याएं हैं: 15 और 9। 15 = 5 * 3 9 = 3 * 3 इसलिए, 15 और 9 का LCM 45 है। उदाहरण (लूप का उपयोग करके)#include <iostream> using namespace std; int main() { int a = 7,

  1. - C++ प्रोग्राम: GCD (महत्तम समापवर्तक) खोजें

    परिचयदो संख्याओं का महत्तम समापवर्तक (GCD) वह सबसे बड़ी संख्या है जो दोनों को विभाजित करती है। उदाहरण के लिए: मान लें हमारे पास दो संख्याएं हैं 45 और 27। 45 = 5 * 3 * 3 27 = 3 * 3 * 3 इसलिए, 45 और 27 का GCD 9 है। उदाहरण 1 (यूक्लिडियन एल्गोरिदम)#include <iostream> using namespace std; int gcd(