কম্পিউটার

একটি প্রদত্ত তালিকার মধ্যক খুঁজে বের করতে সি প্রোগ্রাম।


যদি তালিকার উপাদানগুলিকে ক্রমানুসারে সাজানো হয়, তাহলে, মধ্যম মান যা আইটেমগুলিকে দুই ভাগে ভাগ করে দুই পাশে সমান সংখ্যক আইটেমকে মধ্যমা বলে।

বিজোড় সংখ্যার আইটেমগুলির শুধুমাত্র একটি মধ্যম মান আছে; জোড় সংখ্যার আইটেমের দুটি মধ্যম মান আছে।

আইটেমের জোড় সংখ্যার মধ্যক তাই, দুটি মধ্যম মানের গড় হিসাবে মনোনীত করা হয়।

অ্যালগরিদম

মধ্যম গণনা করতে নীচে দেওয়া একটি অ্যালগরিদম পড়ুন।

ধাপ 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("Enter the number of items\n");
   scanf("%d", &n);
   /* Reading items into array a */
   printf("Input %d values \n",n);
   for (i = 1; i <= n ; i++)
   scanf("%f", &a[i]);
   /* Sorting begins */
   for (i = 1 ; i <= n-1 ; i++){ /* Trip-i begins */
      for (j = 1 ; j <= n-i ; j++) {
         if (a[j] <= a[j+1]) { /* Interchanging values */
            t = a[j];
            a[j] = a[j+1];
            a[j+1] = t;
         }
         else
         continue ;
      }
   } /* sorting ends */
   /* calculation of median */
   if ( n % 2 == 0)
      median = (a[n/2] + a[n/2+1])/2.0 ;
   else
   median = a[n/2 + 1];
   /* Printing */
   for (i = 1 ; i <= n ; i++)
   printf("%f ", a[i]);
   printf("\n\nMedian is %f\n", median);
}

আউটপুট

যখন উপরের প্রোগ্রামটি কার্যকর করা হয়, তখন এটি নিম্নলিখিত আউটপুট তৈরি করে −

Enter the number of items
5
Input 5 values
2.3
1.2
3.8
4.6
8.9
8.900000 4.600000 3.800000 2.300000 1.200000

Median is 3.800000

  1. C প্রোগ্রাম প্রদত্ত স্ট্রিং এর পারমুটেশন খুঁজে বের করতে

  2. সি প্রোগ্রাম লিঙ্ক করা তালিকার দৈর্ঘ্য খুঁজে বের করতে

  3. পাইথন প্রোগ্রাম একটি তালিকার ক্ষুদ্রতম সংখ্যা খুঁজে বের করতে

  4. পাইথন প্রোগ্রাম একটি তালিকায় সবচেয়ে বড় সংখ্যা খুঁজে বের করতে