Heim > Backend-Entwicklung > C++ > Hauptteil

C-Programm zum Ermitteln des Medians einer bestimmten Liste

PHPz
Freigeben: 2023-09-14 13:21:08
nach vorne
1043 Leute haben es durchsucht

C-Programm zum Ermitteln des Medians einer bestimmten Liste

Wenn die Elemente in der Liste der Reihe nach angeordnet sind, wird der Mittelwert, der die Elemente in der Liste in zwei Teile mit einer gleichen Anzahl von Elementen auf beiden Seiten teilt, als Median bezeichnet.

Wenn die Anzahl der Elemente ungerade ist, gibt es nur einen Zwischenwert, während es bei einer geraden Anzahl von Elementen zwei Zwischenwerte gibt.

Der Median einer geraden Anzahl von Items wird also als Durchschnitt der beiden Mittelwerte angegeben.

Algorithmus

Bitte beachten Sie den unten angegebenen Algorithmus, um den Median zu berechnen.

Schritt 1 – Lesen Sie die Elemente in ein Array ein und behalten Sie dabei die Anzahl der Elemente bei.

Schritt 2 – Elemente in aufsteigender Reihenfolge sortieren.

Schritt 3 – Berechnen Sie den Median.

Die Logik zum Sortieren von Zahlen vor dem Ermitteln des Medians lautet wie folgt:

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 ;
   }
}
Nach dem Login kopieren

Die Logik zum Ermitteln des Medians einer Liste lautet wie folgt:

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

Beispiel

Hier ist das C-Programm zur Berechnung des Medians einer bestimmten Zahl -

Live-Demonstration

#include<stdio.h>
#define N 10
main( ){
   int i,j,n;
   float median,a[N],t;
   printf("Enter the number of items</p><p>");
   scanf("%d", &n);
   /* Reading items into array a */
   printf("Input %d values </p><p>",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("</p><p></p><p>Median is %f</p><p>", median);
}
Nach dem Login kopieren

Ausgabe

Beim Ausführen des obigen Programms wird die folgende Ausgabe generiert:

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
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonC-Programm zum Ermitteln des Medians einer bestimmten Liste. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage