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

दी गई लिस्ट का माध्यिका (Median) खोजने का C प्रोग्राम

यदि लिस्ट के एलिमेंट्स क्रम में व्यवस्थित हैं, तो वह मध्य मान जो आइटम्स को दो भागों में विभाजित करता है जिनमें दोनों तरफ समान संख्या में आइटम्स हों, माध्यिका कहलाता है।

विषम संख्या के आइटम्स का केवल एक मध्य मान होता है जबकि; सम संख्या के आइटम्स के दो मध्य मान होते हैं।

इसलिए सम संख्या के आइटम्स के लिए माध्यिका को उन दो मध्य मानों के औसत के रूप में नामित किया जाता है।

एल्गोरिथ्म

माध्यिका की गणना का एल्गोरिथ्म:

  1. आइटम्स को ऐरे में पढ़ें जबकि आइटम्स की गिनती रखें।
  2. आइटम्स को बढ़ते क्रम में सॉर्ट करें।
  3. माध्यिका की गणना करें।

माध्यिका खोजने से पहले नंबरों को सॉर्ट करने के लिए उपयोग की जाने वाली लॉजिक:

for (i = 1; i <= n-1; i++) {
    for (j = 1; j <= n-i; j++) {
        if (a[j] <= a[j+1]) {
            t = a[j];
            a[j] = a[j+1];
            a[j+1] = t;
        } else
            continue;
    }
}

लिस्ट की माध्यिका खोजने के लिए उपयोग की जाने वाली लॉजिक:

if (n % 2 == 0)
    median = (a[n/2] + a[n/2+1]) / 2.0;
else
    median = a[n/2 + 1];

उदाहरण

दी गई संख्याओं की माध्यिका की गणना करने का C प्रोग्राम:

#include <stdio.h>
#define N 10

main() {
    int i, j, n;
    float median, a[N], t;
    printf("आइटम्स की संख्या दर्ज करें\n");
    scanf("%d", &n);
    /* ऐरे a में आइटम्स पढ़ना */
    printf("%d मान दर्ज करें \n", n);
    for (i = 1; i <= n; i++)
        scanf("%f", &a[i]);
    /* सॉर्टिंग शुरू */
    for (i = 1; i <= n-1; i++) { /* ट्रिप-i शुरू */
        for (j = 1; j <= n-i; j++) {
            if (a[j] <= a[j+1]) { /* मानों को इंटरचेंज करना */
                t = a[j];
                a[j] = a[j+1];
                a[j+1] = t;
            }
            else
                continue;
        }
    } /* सॉर्टिंग समाप्त */
    /* माध्यिका की गणना */
    if (n % 2 == 0)
        median = (a[n/2] + a[n/2+1]) / 2.0;
    else
        median = a[n/2 + 1];
    /* प्रिंट करना */
    for (i = 1; i <= n; i++)
        printf("%f ", a[i]);
    printf("\n\nमाध्यिका है %f\n", median);
}

आउटपुट

आइटम्स की संख्या दर्ज करें 5
5 मान दर्ज करें
2.3 1.2 3.8 4.6 8.9
8.900000 4.600000 3.800000 2.300000 1.200000
माध्यिका है 3.800000
  1. लिंक्ड लिस्ट की लंबाई खोजने का C प्रोग्राम लिंक्ड लिस्ट की लंबाई खोजने का C प्रोग्राम

    लिंक्ड लिस्ट डायनामिक मेमोरी आवंटन का उपयोग करती हैं यानी वे तदनुसार बढ़ती और सिकुड़ती हैं। उन्हें नोड्स के संग्रह के रूप में परिभाषित किया जाता है। यहां, नोड्स के दो भाग होते हैं: डेटा और लिंक। डेटा, लिंक और लिंक्ड लिस्ट का प्रतिनिधित्व नीचे दिया गया है। लिंक्ड लिस्ट के प्रकार लिंक्ड लिस्ट के चार

  1. Python प्रोग्राम से सूची में सबसे छोटी संख्या खोजना Python प्रोग्राम से सूची में सबसे छोटी संख्या खोजना

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक सूची दी गई है, हमें सूची में उपलब्ध सबसे छोटी संख्या प्रदर्शित करने की आवश्यकता है। यहां हम या तो सूची को क्रमबद्ध करके सबसे छोटा तत्व प्राप्त कर सकते हैं या बिल्ट-इन min() फ़ंक्शन का उपयोग करके सबसे छोटा तत्

  1. - Python प्रोग्राम से सूची में सबसे बड़ी संख्या खोजना

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक सूची दी गई है, हमें सूची के सबसे बड़े तत्व की गणना करने की आवश्यकता है। यहां हम समस्या कथन के समाधान तक पहुंचने के लिए अंतर्निहित फ़ंक्शंस की मदद लेंगे। sort() फ़ंक्शन का उपयोग करना उदाहरण # सूची list1 = [23